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. A service mesh is a logical boundary for network 61// traffic between the services that reside within it. 62// 63// After you create your service mesh, you can create virtual services, virtual 64// nodes, virtual routers, and routes to distribute traffic between the applications 65// in your mesh. 66// 67// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 68// with awserr.Error's Code and Message methods to get detailed information about 69// the error. 70// 71// See the AWS API reference guide for AWS App Mesh's 72// API operation CreateMesh for usage and error information. 73// 74// Returned Error Codes: 75// * ErrCodeBadRequestException "BadRequestException" 76// The request syntax was malformed. Check your request syntax and try again. 77// 78// * ErrCodeConflictException "ConflictException" 79// The request contains a client token that was used for a previous update resource 80// call with different specifications. Try the request again with a new client 81// token. 82// 83// * ErrCodeForbiddenException "ForbiddenException" 84// You don't have permissions to perform this action. 85// 86// * ErrCodeInternalServerErrorException "InternalServerErrorException" 87// The request processing has failed because of an unknown error, exception, 88// or failure. 89// 90// * ErrCodeLimitExceededException "LimitExceededException" 91// You have exceeded a service limit for your account. For more information, 92// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service_limits.html) 93// in the AWS App Mesh User Guide. 94// 95// * ErrCodeNotFoundException "NotFoundException" 96// The specified resource doesn't exist. Check your request syntax and try again. 97// 98// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 99// The request has failed due to a temporary failure of the service. 100// 101// * ErrCodeTooManyRequestsException "TooManyRequestsException" 102// The maximum request rate permitted by the App Mesh APIs has been exceeded 103// for your account. For best results, use an increasing or variable sleep interval 104// between requests. 105// 106// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateMesh 107func (c *AppMesh) CreateMesh(input *CreateMeshInput) (*CreateMeshOutput, error) { 108 req, out := c.CreateMeshRequest(input) 109 return out, req.Send() 110} 111 112// CreateMeshWithContext is the same as CreateMesh with the addition of 113// the ability to pass a context and additional request options. 114// 115// See CreateMesh for details on how to use this API operation. 116// 117// The context must be non-nil and will be used for request cancellation. If 118// the context is nil a panic will occur. In the future the SDK may create 119// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 120// for more information on using Contexts. 121func (c *AppMesh) CreateMeshWithContext(ctx aws.Context, input *CreateMeshInput, opts ...request.Option) (*CreateMeshOutput, error) { 122 req, out := c.CreateMeshRequest(input) 123 req.SetContext(ctx) 124 req.ApplyOptions(opts...) 125 return out, req.Send() 126} 127 128const opCreateRoute = "CreateRoute" 129 130// CreateRouteRequest generates a "aws/request.Request" representing the 131// client's request for the CreateRoute operation. The "output" return 132// value will be populated with the request's response once the request completes 133// successfully. 134// 135// Use "Send" method on the returned Request to send the API call to the service. 136// the "output" return value is not valid until after Send returns without error. 137// 138// See CreateRoute for more information on using the CreateRoute 139// API call, and error handling. 140// 141// This method is useful when you want to inject custom logic or configuration 142// into the SDK's request lifecycle. Such as custom headers, or retry logic. 143// 144// 145// // Example sending a request using the CreateRouteRequest method. 146// req, resp := client.CreateRouteRequest(params) 147// 148// err := req.Send() 149// if err == nil { // resp is now filled 150// fmt.Println(resp) 151// } 152// 153// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateRoute 154func (c *AppMesh) CreateRouteRequest(input *CreateRouteInput) (req *request.Request, output *CreateRouteOutput) { 155 op := &request.Operation{ 156 Name: opCreateRoute, 157 HTTPMethod: "PUT", 158 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes", 159 } 160 161 if input == nil { 162 input = &CreateRouteInput{} 163 } 164 165 output = &CreateRouteOutput{} 166 req = c.newRequest(op, input, output) 167 return 168} 169 170// CreateRoute API operation for AWS App Mesh. 171// 172// Creates a route that is associated with a virtual router. 173// 174// You can use the prefix parameter in your route specification for path-based 175// routing of requests. For example, if your virtual service name is my-service.local 176// and you want the route to match requests to my-service.local/metrics, your 177// prefix should be /metrics. 178// 179// If your route matches a request, you can distribute traffic to one or more 180// target virtual nodes with relative weighting. 181// 182// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 183// with awserr.Error's Code and Message methods to get detailed information about 184// the error. 185// 186// See the AWS API reference guide for AWS App Mesh's 187// API operation CreateRoute for usage and error information. 188// 189// Returned Error Codes: 190// * ErrCodeBadRequestException "BadRequestException" 191// The request syntax was malformed. Check your request syntax and try again. 192// 193// * ErrCodeConflictException "ConflictException" 194// The request contains a client token that was used for a previous update resource 195// call with different specifications. Try the request again with a new client 196// token. 197// 198// * ErrCodeForbiddenException "ForbiddenException" 199// You don't have permissions to perform this action. 200// 201// * ErrCodeInternalServerErrorException "InternalServerErrorException" 202// The request processing has failed because of an unknown error, exception, 203// or failure. 204// 205// * ErrCodeLimitExceededException "LimitExceededException" 206// You have exceeded a service limit for your account. For more information, 207// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service_limits.html) 208// in the AWS App Mesh User Guide. 209// 210// * ErrCodeNotFoundException "NotFoundException" 211// The specified resource doesn't exist. Check your request syntax and try again. 212// 213// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 214// The request has failed due to a temporary failure of the service. 215// 216// * ErrCodeTooManyRequestsException "TooManyRequestsException" 217// The maximum request rate permitted by the App Mesh APIs has been exceeded 218// for your account. For best results, use an increasing or variable sleep interval 219// between requests. 220// 221// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateRoute 222func (c *AppMesh) CreateRoute(input *CreateRouteInput) (*CreateRouteOutput, error) { 223 req, out := c.CreateRouteRequest(input) 224 return out, req.Send() 225} 226 227// CreateRouteWithContext is the same as CreateRoute with the addition of 228// the ability to pass a context and additional request options. 229// 230// See CreateRoute for details on how to use this API operation. 231// 232// The context must be non-nil and will be used for request cancellation. If 233// the context is nil a panic will occur. In the future the SDK may create 234// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 235// for more information on using Contexts. 236func (c *AppMesh) CreateRouteWithContext(ctx aws.Context, input *CreateRouteInput, opts ...request.Option) (*CreateRouteOutput, error) { 237 req, out := c.CreateRouteRequest(input) 238 req.SetContext(ctx) 239 req.ApplyOptions(opts...) 240 return out, req.Send() 241} 242 243const opCreateVirtualNode = "CreateVirtualNode" 244 245// CreateVirtualNodeRequest generates a "aws/request.Request" representing the 246// client's request for the CreateVirtualNode operation. The "output" return 247// value will be populated with the request's response once the request completes 248// successfully. 249// 250// Use "Send" method on the returned Request to send the API call to the service. 251// the "output" return value is not valid until after Send returns without error. 252// 253// See CreateVirtualNode for more information on using the CreateVirtualNode 254// API call, and error handling. 255// 256// This method is useful when you want to inject custom logic or configuration 257// into the SDK's request lifecycle. Such as custom headers, or retry logic. 258// 259// 260// // Example sending a request using the CreateVirtualNodeRequest method. 261// req, resp := client.CreateVirtualNodeRequest(params) 262// 263// err := req.Send() 264// if err == nil { // resp is now filled 265// fmt.Println(resp) 266// } 267// 268// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualNode 269func (c *AppMesh) CreateVirtualNodeRequest(input *CreateVirtualNodeInput) (req *request.Request, output *CreateVirtualNodeOutput) { 270 op := &request.Operation{ 271 Name: opCreateVirtualNode, 272 HTTPMethod: "PUT", 273 HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes", 274 } 275 276 if input == nil { 277 input = &CreateVirtualNodeInput{} 278 } 279 280 output = &CreateVirtualNodeOutput{} 281 req = c.newRequest(op, input, output) 282 return 283} 284 285// CreateVirtualNode API operation for AWS App Mesh. 286// 287// Creates a virtual node within a service mesh. 288// 289// A virtual node acts as a logical pointer to a particular task group, such 290// as an Amazon ECS service or a Kubernetes deployment. When you create a virtual 291// node, you can specify the service discovery information for your task group. 292// 293// Any inbound traffic that your virtual node expects should be specified as 294// a listener. Any outbound traffic that your virtual node expects to reach 295// should be specified as a backend. 296// 297// The response metadata for your new virtual node contains the arn that is 298// associated with the virtual node. Set this value (either the full ARN or 299// the truncated resource name: for example, mesh/default/virtualNode/simpleapp) 300// as the APPMESH_VIRTUAL_NODE_NAME environment variable for your task group's 301// Envoy proxy container in your task definition or pod spec. This is then mapped 302// to the node.id and node.cluster Envoy parameters. 303// 304// If you require your Envoy stats or tracing to use a different name, you can 305// override the node.cluster value that is set by APPMESH_VIRTUAL_NODE_NAME 306// with the APPMESH_VIRTUAL_NODE_CLUSTER environment variable. 307// 308// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 309// with awserr.Error's Code and Message methods to get detailed information about 310// the error. 311// 312// See the AWS API reference guide for AWS App Mesh's 313// API operation CreateVirtualNode for usage and error information. 314// 315// Returned Error Codes: 316// * ErrCodeBadRequestException "BadRequestException" 317// The request syntax was malformed. Check your request syntax and try again. 318// 319// * ErrCodeConflictException "ConflictException" 320// The request contains a client token that was used for a previous update resource 321// call with different specifications. Try the request again with a new client 322// token. 323// 324// * ErrCodeForbiddenException "ForbiddenException" 325// You don't have permissions to perform this action. 326// 327// * ErrCodeInternalServerErrorException "InternalServerErrorException" 328// The request processing has failed because of an unknown error, exception, 329// or failure. 330// 331// * ErrCodeLimitExceededException "LimitExceededException" 332// You have exceeded a service limit for your account. For more information, 333// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service_limits.html) 334// in the AWS App Mesh User Guide. 335// 336// * ErrCodeNotFoundException "NotFoundException" 337// The specified resource doesn't exist. Check your request syntax and try again. 338// 339// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 340// The request has failed due to a temporary failure of the service. 341// 342// * ErrCodeTooManyRequestsException "TooManyRequestsException" 343// The maximum request rate permitted by the App Mesh APIs has been exceeded 344// for your account. For best results, use an increasing or variable sleep interval 345// between requests. 346// 347// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualNode 348func (c *AppMesh) CreateVirtualNode(input *CreateVirtualNodeInput) (*CreateVirtualNodeOutput, error) { 349 req, out := c.CreateVirtualNodeRequest(input) 350 return out, req.Send() 351} 352 353// CreateVirtualNodeWithContext is the same as CreateVirtualNode with the addition of 354// the ability to pass a context and additional request options. 355// 356// See CreateVirtualNode for details on how to use this API operation. 357// 358// The context must be non-nil and will be used for request cancellation. If 359// the context is nil a panic will occur. In the future the SDK may create 360// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 361// for more information on using Contexts. 362func (c *AppMesh) CreateVirtualNodeWithContext(ctx aws.Context, input *CreateVirtualNodeInput, opts ...request.Option) (*CreateVirtualNodeOutput, error) { 363 req, out := c.CreateVirtualNodeRequest(input) 364 req.SetContext(ctx) 365 req.ApplyOptions(opts...) 366 return out, req.Send() 367} 368 369const opCreateVirtualRouter = "CreateVirtualRouter" 370 371// CreateVirtualRouterRequest generates a "aws/request.Request" representing the 372// client's request for the CreateVirtualRouter operation. The "output" return 373// value will be populated with the request's response once the request completes 374// successfully. 375// 376// Use "Send" method on the returned Request to send the API call to the service. 377// the "output" return value is not valid until after Send returns without error. 378// 379// See CreateVirtualRouter for more information on using the CreateVirtualRouter 380// API call, and error handling. 381// 382// This method is useful when you want to inject custom logic or configuration 383// into the SDK's request lifecycle. Such as custom headers, or retry logic. 384// 385// 386// // Example sending a request using the CreateVirtualRouterRequest method. 387// req, resp := client.CreateVirtualRouterRequest(params) 388// 389// err := req.Send() 390// if err == nil { // resp is now filled 391// fmt.Println(resp) 392// } 393// 394// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualRouter 395func (c *AppMesh) CreateVirtualRouterRequest(input *CreateVirtualRouterInput) (req *request.Request, output *CreateVirtualRouterOutput) { 396 op := &request.Operation{ 397 Name: opCreateVirtualRouter, 398 HTTPMethod: "PUT", 399 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouters", 400 } 401 402 if input == nil { 403 input = &CreateVirtualRouterInput{} 404 } 405 406 output = &CreateVirtualRouterOutput{} 407 req = c.newRequest(op, input, output) 408 return 409} 410 411// CreateVirtualRouter API operation for AWS App Mesh. 412// 413// Creates a virtual router within a service mesh. 414// 415// Any inbound traffic that your virtual router expects should be specified 416// as a listener. 417// 418// Virtual routers handle traffic for one or more virtual services within your 419// mesh. After you create your virtual router, create and associate routes for 420// your virtual router that direct incoming requests to different virtual nodes. 421// 422// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 423// with awserr.Error's Code and Message methods to get detailed information about 424// the error. 425// 426// See the AWS API reference guide for AWS App Mesh's 427// API operation CreateVirtualRouter for usage and error information. 428// 429// Returned Error Codes: 430// * ErrCodeBadRequestException "BadRequestException" 431// The request syntax was malformed. Check your request syntax and try again. 432// 433// * ErrCodeConflictException "ConflictException" 434// The request contains a client token that was used for a previous update resource 435// call with different specifications. Try the request again with a new client 436// token. 437// 438// * ErrCodeForbiddenException "ForbiddenException" 439// You don't have permissions to perform this action. 440// 441// * ErrCodeInternalServerErrorException "InternalServerErrorException" 442// The request processing has failed because of an unknown error, exception, 443// or failure. 444// 445// * ErrCodeLimitExceededException "LimitExceededException" 446// You have exceeded a service limit for your account. For more information, 447// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service_limits.html) 448// in the AWS App Mesh User Guide. 449// 450// * ErrCodeNotFoundException "NotFoundException" 451// The specified resource doesn't exist. Check your request syntax and try again. 452// 453// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 454// The request has failed due to a temporary failure of the service. 455// 456// * ErrCodeTooManyRequestsException "TooManyRequestsException" 457// The maximum request rate permitted by the App Mesh APIs has been exceeded 458// for your account. For best results, use an increasing or variable sleep interval 459// between requests. 460// 461// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualRouter 462func (c *AppMesh) CreateVirtualRouter(input *CreateVirtualRouterInput) (*CreateVirtualRouterOutput, error) { 463 req, out := c.CreateVirtualRouterRequest(input) 464 return out, req.Send() 465} 466 467// CreateVirtualRouterWithContext is the same as CreateVirtualRouter with the addition of 468// the ability to pass a context and additional request options. 469// 470// See CreateVirtualRouter for details on how to use this API operation. 471// 472// The context must be non-nil and will be used for request cancellation. If 473// the context is nil a panic will occur. In the future the SDK may create 474// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 475// for more information on using Contexts. 476func (c *AppMesh) CreateVirtualRouterWithContext(ctx aws.Context, input *CreateVirtualRouterInput, opts ...request.Option) (*CreateVirtualRouterOutput, error) { 477 req, out := c.CreateVirtualRouterRequest(input) 478 req.SetContext(ctx) 479 req.ApplyOptions(opts...) 480 return out, req.Send() 481} 482 483const opCreateVirtualService = "CreateVirtualService" 484 485// CreateVirtualServiceRequest generates a "aws/request.Request" representing the 486// client's request for the CreateVirtualService operation. The "output" return 487// value will be populated with the request's response once the request completes 488// successfully. 489// 490// Use "Send" method on the returned Request to send the API call to the service. 491// the "output" return value is not valid until after Send returns without error. 492// 493// See CreateVirtualService for more information on using the CreateVirtualService 494// API call, and error handling. 495// 496// This method is useful when you want to inject custom logic or configuration 497// into the SDK's request lifecycle. Such as custom headers, or retry logic. 498// 499// 500// // Example sending a request using the CreateVirtualServiceRequest method. 501// req, resp := client.CreateVirtualServiceRequest(params) 502// 503// err := req.Send() 504// if err == nil { // resp is now filled 505// fmt.Println(resp) 506// } 507// 508// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualService 509func (c *AppMesh) CreateVirtualServiceRequest(input *CreateVirtualServiceInput) (req *request.Request, output *CreateVirtualServiceOutput) { 510 op := &request.Operation{ 511 Name: opCreateVirtualService, 512 HTTPMethod: "PUT", 513 HTTPPath: "/v20190125/meshes/{meshName}/virtualServices", 514 } 515 516 if input == nil { 517 input = &CreateVirtualServiceInput{} 518 } 519 520 output = &CreateVirtualServiceOutput{} 521 req = c.newRequest(op, input, output) 522 return 523} 524 525// CreateVirtualService API operation for AWS App Mesh. 526// 527// Creates a virtual service within a service mesh. 528// 529// A virtual service is an abstraction of a real service that is provided by 530// a virtual node directly or indirectly by means of a virtual router. Dependent 531// services call your virtual service by its virtualServiceName, and those requests 532// are routed to the virtual node or virtual router that is specified as the 533// provider for the virtual service. 534// 535// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 536// with awserr.Error's Code and Message methods to get detailed information about 537// the error. 538// 539// See the AWS API reference guide for AWS App Mesh's 540// API operation CreateVirtualService for usage and error information. 541// 542// Returned Error Codes: 543// * ErrCodeBadRequestException "BadRequestException" 544// The request syntax was malformed. Check your request syntax and try again. 545// 546// * ErrCodeConflictException "ConflictException" 547// The request contains a client token that was used for a previous update resource 548// call with different specifications. Try the request again with a new client 549// token. 550// 551// * ErrCodeForbiddenException "ForbiddenException" 552// You don't have permissions to perform this action. 553// 554// * ErrCodeInternalServerErrorException "InternalServerErrorException" 555// The request processing has failed because of an unknown error, exception, 556// or failure. 557// 558// * ErrCodeLimitExceededException "LimitExceededException" 559// You have exceeded a service limit for your account. For more information, 560// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service_limits.html) 561// in the AWS App Mesh User Guide. 562// 563// * ErrCodeNotFoundException "NotFoundException" 564// The specified resource doesn't exist. Check your request syntax and try again. 565// 566// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 567// The request has failed due to a temporary failure of the service. 568// 569// * ErrCodeTooManyRequestsException "TooManyRequestsException" 570// The maximum request rate permitted by the App Mesh APIs has been exceeded 571// for your account. For best results, use an increasing or variable sleep interval 572// between requests. 573// 574// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualService 575func (c *AppMesh) CreateVirtualService(input *CreateVirtualServiceInput) (*CreateVirtualServiceOutput, error) { 576 req, out := c.CreateVirtualServiceRequest(input) 577 return out, req.Send() 578} 579 580// CreateVirtualServiceWithContext is the same as CreateVirtualService with the addition of 581// the ability to pass a context and additional request options. 582// 583// See CreateVirtualService for details on how to use this API operation. 584// 585// The context must be non-nil and will be used for request cancellation. If 586// the context is nil a panic will occur. In the future the SDK may create 587// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 588// for more information on using Contexts. 589func (c *AppMesh) CreateVirtualServiceWithContext(ctx aws.Context, input *CreateVirtualServiceInput, opts ...request.Option) (*CreateVirtualServiceOutput, error) { 590 req, out := c.CreateVirtualServiceRequest(input) 591 req.SetContext(ctx) 592 req.ApplyOptions(opts...) 593 return out, req.Send() 594} 595 596const opDeleteMesh = "DeleteMesh" 597 598// DeleteMeshRequest generates a "aws/request.Request" representing the 599// client's request for the DeleteMesh operation. The "output" return 600// value will be populated with the request's response once the request completes 601// successfully. 602// 603// Use "Send" method on the returned Request to send the API call to the service. 604// the "output" return value is not valid until after Send returns without error. 605// 606// See DeleteMesh for more information on using the DeleteMesh 607// API call, and error handling. 608// 609// This method is useful when you want to inject custom logic or configuration 610// into the SDK's request lifecycle. Such as custom headers, or retry logic. 611// 612// 613// // Example sending a request using the DeleteMeshRequest method. 614// req, resp := client.DeleteMeshRequest(params) 615// 616// err := req.Send() 617// if err == nil { // resp is now filled 618// fmt.Println(resp) 619// } 620// 621// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteMesh 622func (c *AppMesh) DeleteMeshRequest(input *DeleteMeshInput) (req *request.Request, output *DeleteMeshOutput) { 623 op := &request.Operation{ 624 Name: opDeleteMesh, 625 HTTPMethod: "DELETE", 626 HTTPPath: "/v20190125/meshes/{meshName}", 627 } 628 629 if input == nil { 630 input = &DeleteMeshInput{} 631 } 632 633 output = &DeleteMeshOutput{} 634 req = c.newRequest(op, input, output) 635 return 636} 637 638// DeleteMesh API operation for AWS App Mesh. 639// 640// Deletes an existing service mesh. 641// 642// You must delete all resources (virtual services, routes, virtual routers, 643// and virtual nodes) in the service mesh before you can delete the mesh itself. 644// 645// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 646// with awserr.Error's Code and Message methods to get detailed information about 647// the error. 648// 649// See the AWS API reference guide for AWS App Mesh's 650// API operation DeleteMesh for usage and error information. 651// 652// Returned Error Codes: 653// * ErrCodeBadRequestException "BadRequestException" 654// The request syntax was malformed. Check your request syntax and try again. 655// 656// * ErrCodeForbiddenException "ForbiddenException" 657// You don't have permissions to perform this action. 658// 659// * ErrCodeInternalServerErrorException "InternalServerErrorException" 660// The request processing has failed because of an unknown error, exception, 661// or failure. 662// 663// * ErrCodeNotFoundException "NotFoundException" 664// The specified resource doesn't exist. Check your request syntax and try again. 665// 666// * ErrCodeResourceInUseException "ResourceInUseException" 667// You can't delete the specified resource because it's in use or required by 668// another resource. 669// 670// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 671// The request has failed due to a temporary failure of the service. 672// 673// * ErrCodeTooManyRequestsException "TooManyRequestsException" 674// The maximum request rate permitted by the App Mesh APIs has been exceeded 675// for your account. For best results, use an increasing or variable sleep interval 676// between requests. 677// 678// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteMesh 679func (c *AppMesh) DeleteMesh(input *DeleteMeshInput) (*DeleteMeshOutput, error) { 680 req, out := c.DeleteMeshRequest(input) 681 return out, req.Send() 682} 683 684// DeleteMeshWithContext is the same as DeleteMesh with the addition of 685// the ability to pass a context and additional request options. 686// 687// See DeleteMesh for details on how to use this API operation. 688// 689// The context must be non-nil and will be used for request cancellation. If 690// the context is nil a panic will occur. In the future the SDK may create 691// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 692// for more information on using Contexts. 693func (c *AppMesh) DeleteMeshWithContext(ctx aws.Context, input *DeleteMeshInput, opts ...request.Option) (*DeleteMeshOutput, error) { 694 req, out := c.DeleteMeshRequest(input) 695 req.SetContext(ctx) 696 req.ApplyOptions(opts...) 697 return out, req.Send() 698} 699 700const opDeleteRoute = "DeleteRoute" 701 702// DeleteRouteRequest generates a "aws/request.Request" representing the 703// client's request for the DeleteRoute operation. The "output" return 704// value will be populated with the request's response once the request completes 705// successfully. 706// 707// Use "Send" method on the returned Request to send the API call to the service. 708// the "output" return value is not valid until after Send returns without error. 709// 710// See DeleteRoute for more information on using the DeleteRoute 711// API call, and error handling. 712// 713// This method is useful when you want to inject custom logic or configuration 714// into the SDK's request lifecycle. Such as custom headers, or retry logic. 715// 716// 717// // Example sending a request using the DeleteRouteRequest method. 718// req, resp := client.DeleteRouteRequest(params) 719// 720// err := req.Send() 721// if err == nil { // resp is now filled 722// fmt.Println(resp) 723// } 724// 725// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteRoute 726func (c *AppMesh) DeleteRouteRequest(input *DeleteRouteInput) (req *request.Request, output *DeleteRouteOutput) { 727 op := &request.Operation{ 728 Name: opDeleteRoute, 729 HTTPMethod: "DELETE", 730 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes/{routeName}", 731 } 732 733 if input == nil { 734 input = &DeleteRouteInput{} 735 } 736 737 output = &DeleteRouteOutput{} 738 req = c.newRequest(op, input, output) 739 return 740} 741 742// DeleteRoute API operation for AWS App Mesh. 743// 744// Deletes an existing route. 745// 746// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 747// with awserr.Error's Code and Message methods to get detailed information about 748// the error. 749// 750// See the AWS API reference guide for AWS App Mesh's 751// API operation DeleteRoute for usage and error information. 752// 753// Returned Error Codes: 754// * ErrCodeBadRequestException "BadRequestException" 755// The request syntax was malformed. Check your request syntax and try again. 756// 757// * ErrCodeForbiddenException "ForbiddenException" 758// You don't have permissions to perform this action. 759// 760// * ErrCodeInternalServerErrorException "InternalServerErrorException" 761// The request processing has failed because of an unknown error, exception, 762// or failure. 763// 764// * ErrCodeNotFoundException "NotFoundException" 765// The specified resource doesn't exist. Check your request syntax and try again. 766// 767// * ErrCodeResourceInUseException "ResourceInUseException" 768// You can't delete the specified resource because it's in use or required by 769// another resource. 770// 771// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 772// The request has failed due to a temporary failure of the service. 773// 774// * ErrCodeTooManyRequestsException "TooManyRequestsException" 775// The maximum request rate permitted by the App Mesh APIs has been exceeded 776// for your account. For best results, use an increasing or variable sleep interval 777// between requests. 778// 779// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteRoute 780func (c *AppMesh) DeleteRoute(input *DeleteRouteInput) (*DeleteRouteOutput, error) { 781 req, out := c.DeleteRouteRequest(input) 782 return out, req.Send() 783} 784 785// DeleteRouteWithContext is the same as DeleteRoute with the addition of 786// the ability to pass a context and additional request options. 787// 788// See DeleteRoute for details on how to use this API operation. 789// 790// The context must be non-nil and will be used for request cancellation. If 791// the context is nil a panic will occur. In the future the SDK may create 792// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 793// for more information on using Contexts. 794func (c *AppMesh) DeleteRouteWithContext(ctx aws.Context, input *DeleteRouteInput, opts ...request.Option) (*DeleteRouteOutput, error) { 795 req, out := c.DeleteRouteRequest(input) 796 req.SetContext(ctx) 797 req.ApplyOptions(opts...) 798 return out, req.Send() 799} 800 801const opDeleteVirtualNode = "DeleteVirtualNode" 802 803// DeleteVirtualNodeRequest generates a "aws/request.Request" representing the 804// client's request for the DeleteVirtualNode operation. The "output" return 805// value will be populated with the request's response once the request completes 806// successfully. 807// 808// Use "Send" method on the returned Request to send the API call to the service. 809// the "output" return value is not valid until after Send returns without error. 810// 811// See DeleteVirtualNode for more information on using the DeleteVirtualNode 812// API call, and error handling. 813// 814// This method is useful when you want to inject custom logic or configuration 815// into the SDK's request lifecycle. Such as custom headers, or retry logic. 816// 817// 818// // Example sending a request using the DeleteVirtualNodeRequest method. 819// req, resp := client.DeleteVirtualNodeRequest(params) 820// 821// err := req.Send() 822// if err == nil { // resp is now filled 823// fmt.Println(resp) 824// } 825// 826// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualNode 827func (c *AppMesh) DeleteVirtualNodeRequest(input *DeleteVirtualNodeInput) (req *request.Request, output *DeleteVirtualNodeOutput) { 828 op := &request.Operation{ 829 Name: opDeleteVirtualNode, 830 HTTPMethod: "DELETE", 831 HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes/{virtualNodeName}", 832 } 833 834 if input == nil { 835 input = &DeleteVirtualNodeInput{} 836 } 837 838 output = &DeleteVirtualNodeOutput{} 839 req = c.newRequest(op, input, output) 840 return 841} 842 843// DeleteVirtualNode API operation for AWS App Mesh. 844// 845// Deletes an existing virtual node. 846// 847// You must delete any virtual services that list a virtual node as a service 848// provider before you can delete the virtual node itself. 849// 850// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 851// with awserr.Error's Code and Message methods to get detailed information about 852// the error. 853// 854// See the AWS API reference guide for AWS App Mesh's 855// API operation DeleteVirtualNode for usage and error information. 856// 857// Returned Error Codes: 858// * ErrCodeBadRequestException "BadRequestException" 859// The request syntax was malformed. Check your request syntax and try again. 860// 861// * ErrCodeForbiddenException "ForbiddenException" 862// You don't have permissions to perform this action. 863// 864// * ErrCodeInternalServerErrorException "InternalServerErrorException" 865// The request processing has failed because of an unknown error, exception, 866// or failure. 867// 868// * ErrCodeNotFoundException "NotFoundException" 869// The specified resource doesn't exist. Check your request syntax and try again. 870// 871// * ErrCodeResourceInUseException "ResourceInUseException" 872// You can't delete the specified resource because it's in use or required by 873// another resource. 874// 875// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 876// The request has failed due to a temporary failure of the service. 877// 878// * ErrCodeTooManyRequestsException "TooManyRequestsException" 879// The maximum request rate permitted by the App Mesh APIs has been exceeded 880// for your account. For best results, use an increasing or variable sleep interval 881// between requests. 882// 883// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualNode 884func (c *AppMesh) DeleteVirtualNode(input *DeleteVirtualNodeInput) (*DeleteVirtualNodeOutput, error) { 885 req, out := c.DeleteVirtualNodeRequest(input) 886 return out, req.Send() 887} 888 889// DeleteVirtualNodeWithContext is the same as DeleteVirtualNode with the addition of 890// the ability to pass a context and additional request options. 891// 892// See DeleteVirtualNode for details on how to use this API operation. 893// 894// The context must be non-nil and will be used for request cancellation. If 895// the context is nil a panic will occur. In the future the SDK may create 896// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 897// for more information on using Contexts. 898func (c *AppMesh) DeleteVirtualNodeWithContext(ctx aws.Context, input *DeleteVirtualNodeInput, opts ...request.Option) (*DeleteVirtualNodeOutput, error) { 899 req, out := c.DeleteVirtualNodeRequest(input) 900 req.SetContext(ctx) 901 req.ApplyOptions(opts...) 902 return out, req.Send() 903} 904 905const opDeleteVirtualRouter = "DeleteVirtualRouter" 906 907// DeleteVirtualRouterRequest generates a "aws/request.Request" representing the 908// client's request for the DeleteVirtualRouter operation. The "output" return 909// value will be populated with the request's response once the request completes 910// successfully. 911// 912// Use "Send" method on the returned Request to send the API call to the service. 913// the "output" return value is not valid until after Send returns without error. 914// 915// See DeleteVirtualRouter for more information on using the DeleteVirtualRouter 916// API call, and error handling. 917// 918// This method is useful when you want to inject custom logic or configuration 919// into the SDK's request lifecycle. Such as custom headers, or retry logic. 920// 921// 922// // Example sending a request using the DeleteVirtualRouterRequest method. 923// req, resp := client.DeleteVirtualRouterRequest(params) 924// 925// err := req.Send() 926// if err == nil { // resp is now filled 927// fmt.Println(resp) 928// } 929// 930// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualRouter 931func (c *AppMesh) DeleteVirtualRouterRequest(input *DeleteVirtualRouterInput) (req *request.Request, output *DeleteVirtualRouterOutput) { 932 op := &request.Operation{ 933 Name: opDeleteVirtualRouter, 934 HTTPMethod: "DELETE", 935 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouters/{virtualRouterName}", 936 } 937 938 if input == nil { 939 input = &DeleteVirtualRouterInput{} 940 } 941 942 output = &DeleteVirtualRouterOutput{} 943 req = c.newRequest(op, input, output) 944 return 945} 946 947// DeleteVirtualRouter API operation for AWS App Mesh. 948// 949// Deletes an existing virtual router. 950// 951// You must delete any routes associated with the virtual router before you 952// can delete the router itself. 953// 954// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 955// with awserr.Error's Code and Message methods to get detailed information about 956// the error. 957// 958// See the AWS API reference guide for AWS App Mesh's 959// API operation DeleteVirtualRouter for usage and error information. 960// 961// Returned Error Codes: 962// * ErrCodeBadRequestException "BadRequestException" 963// The request syntax was malformed. Check your request syntax and try again. 964// 965// * ErrCodeForbiddenException "ForbiddenException" 966// You don't have permissions to perform this action. 967// 968// * ErrCodeInternalServerErrorException "InternalServerErrorException" 969// The request processing has failed because of an unknown error, exception, 970// or failure. 971// 972// * ErrCodeNotFoundException "NotFoundException" 973// The specified resource doesn't exist. Check your request syntax and try again. 974// 975// * ErrCodeResourceInUseException "ResourceInUseException" 976// You can't delete the specified resource because it's in use or required by 977// another resource. 978// 979// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 980// The request has failed due to a temporary failure of the service. 981// 982// * ErrCodeTooManyRequestsException "TooManyRequestsException" 983// The maximum request rate permitted by the App Mesh APIs has been exceeded 984// for your account. For best results, use an increasing or variable sleep interval 985// between requests. 986// 987// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualRouter 988func (c *AppMesh) DeleteVirtualRouter(input *DeleteVirtualRouterInput) (*DeleteVirtualRouterOutput, error) { 989 req, out := c.DeleteVirtualRouterRequest(input) 990 return out, req.Send() 991} 992 993// DeleteVirtualRouterWithContext is the same as DeleteVirtualRouter with the addition of 994// the ability to pass a context and additional request options. 995// 996// See DeleteVirtualRouter for details on how to use this API operation. 997// 998// The context must be non-nil and will be used for request cancellation. If 999// the context is nil a panic will occur. In the future the SDK may create 1000// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1001// for more information on using Contexts. 1002func (c *AppMesh) DeleteVirtualRouterWithContext(ctx aws.Context, input *DeleteVirtualRouterInput, opts ...request.Option) (*DeleteVirtualRouterOutput, error) { 1003 req, out := c.DeleteVirtualRouterRequest(input) 1004 req.SetContext(ctx) 1005 req.ApplyOptions(opts...) 1006 return out, req.Send() 1007} 1008 1009const opDeleteVirtualService = "DeleteVirtualService" 1010 1011// DeleteVirtualServiceRequest generates a "aws/request.Request" representing the 1012// client's request for the DeleteVirtualService operation. The "output" return 1013// value will be populated with the request's response once the request completes 1014// successfully. 1015// 1016// Use "Send" method on the returned Request to send the API call to the service. 1017// the "output" return value is not valid until after Send returns without error. 1018// 1019// See DeleteVirtualService for more information on using the DeleteVirtualService 1020// API call, and error handling. 1021// 1022// This method is useful when you want to inject custom logic or configuration 1023// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1024// 1025// 1026// // Example sending a request using the DeleteVirtualServiceRequest method. 1027// req, resp := client.DeleteVirtualServiceRequest(params) 1028// 1029// err := req.Send() 1030// if err == nil { // resp is now filled 1031// fmt.Println(resp) 1032// } 1033// 1034// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualService 1035func (c *AppMesh) DeleteVirtualServiceRequest(input *DeleteVirtualServiceInput) (req *request.Request, output *DeleteVirtualServiceOutput) { 1036 op := &request.Operation{ 1037 Name: opDeleteVirtualService, 1038 HTTPMethod: "DELETE", 1039 HTTPPath: "/v20190125/meshes/{meshName}/virtualServices/{virtualServiceName}", 1040 } 1041 1042 if input == nil { 1043 input = &DeleteVirtualServiceInput{} 1044 } 1045 1046 output = &DeleteVirtualServiceOutput{} 1047 req = c.newRequest(op, input, output) 1048 return 1049} 1050 1051// DeleteVirtualService API operation for AWS App Mesh. 1052// 1053// Deletes an existing virtual service. 1054// 1055// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1056// with awserr.Error's Code and Message methods to get detailed information about 1057// the error. 1058// 1059// See the AWS API reference guide for AWS App Mesh's 1060// API operation DeleteVirtualService for usage and error information. 1061// 1062// Returned Error Codes: 1063// * ErrCodeBadRequestException "BadRequestException" 1064// The request syntax was malformed. Check your request syntax and try again. 1065// 1066// * ErrCodeForbiddenException "ForbiddenException" 1067// You don't have permissions to perform this action. 1068// 1069// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1070// The request processing has failed because of an unknown error, exception, 1071// or failure. 1072// 1073// * ErrCodeNotFoundException "NotFoundException" 1074// The specified resource doesn't exist. Check your request syntax and try again. 1075// 1076// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 1077// The request has failed due to a temporary failure of the service. 1078// 1079// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1080// The maximum request rate permitted by the App Mesh APIs has been exceeded 1081// for your account. For best results, use an increasing or variable sleep interval 1082// between requests. 1083// 1084// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualService 1085func (c *AppMesh) DeleteVirtualService(input *DeleteVirtualServiceInput) (*DeleteVirtualServiceOutput, error) { 1086 req, out := c.DeleteVirtualServiceRequest(input) 1087 return out, req.Send() 1088} 1089 1090// DeleteVirtualServiceWithContext is the same as DeleteVirtualService with the addition of 1091// the ability to pass a context and additional request options. 1092// 1093// See DeleteVirtualService for details on how to use this API operation. 1094// 1095// The context must be non-nil and will be used for request cancellation. If 1096// the context is nil a panic will occur. In the future the SDK may create 1097// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1098// for more information on using Contexts. 1099func (c *AppMesh) DeleteVirtualServiceWithContext(ctx aws.Context, input *DeleteVirtualServiceInput, opts ...request.Option) (*DeleteVirtualServiceOutput, error) { 1100 req, out := c.DeleteVirtualServiceRequest(input) 1101 req.SetContext(ctx) 1102 req.ApplyOptions(opts...) 1103 return out, req.Send() 1104} 1105 1106const opDescribeMesh = "DescribeMesh" 1107 1108// DescribeMeshRequest generates a "aws/request.Request" representing the 1109// client's request for the DescribeMesh operation. The "output" return 1110// value will be populated with the request's response once the request completes 1111// successfully. 1112// 1113// Use "Send" method on the returned Request to send the API call to the service. 1114// the "output" return value is not valid until after Send returns without error. 1115// 1116// See DescribeMesh for more information on using the DescribeMesh 1117// API call, and error handling. 1118// 1119// This method is useful when you want to inject custom logic or configuration 1120// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1121// 1122// 1123// // Example sending a request using the DescribeMeshRequest method. 1124// req, resp := client.DescribeMeshRequest(params) 1125// 1126// err := req.Send() 1127// if err == nil { // resp is now filled 1128// fmt.Println(resp) 1129// } 1130// 1131// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeMesh 1132func (c *AppMesh) DescribeMeshRequest(input *DescribeMeshInput) (req *request.Request, output *DescribeMeshOutput) { 1133 op := &request.Operation{ 1134 Name: opDescribeMesh, 1135 HTTPMethod: "GET", 1136 HTTPPath: "/v20190125/meshes/{meshName}", 1137 } 1138 1139 if input == nil { 1140 input = &DescribeMeshInput{} 1141 } 1142 1143 output = &DescribeMeshOutput{} 1144 req = c.newRequest(op, input, output) 1145 return 1146} 1147 1148// DescribeMesh API operation for AWS App Mesh. 1149// 1150// Describes an existing service mesh. 1151// 1152// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1153// with awserr.Error's Code and Message methods to get detailed information about 1154// the error. 1155// 1156// See the AWS API reference guide for AWS App Mesh's 1157// API operation DescribeMesh for usage and error information. 1158// 1159// Returned Error Codes: 1160// * ErrCodeBadRequestException "BadRequestException" 1161// The request syntax was malformed. Check your request syntax and try again. 1162// 1163// * ErrCodeForbiddenException "ForbiddenException" 1164// You don't have permissions to perform this action. 1165// 1166// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1167// The request processing has failed because of an unknown error, exception, 1168// or failure. 1169// 1170// * ErrCodeNotFoundException "NotFoundException" 1171// The specified resource doesn't exist. Check your request syntax and try again. 1172// 1173// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 1174// The request has failed due to a temporary failure of the service. 1175// 1176// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1177// The maximum request rate permitted by the App Mesh APIs has been exceeded 1178// for your account. For best results, use an increasing or variable sleep interval 1179// between requests. 1180// 1181// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeMesh 1182func (c *AppMesh) DescribeMesh(input *DescribeMeshInput) (*DescribeMeshOutput, error) { 1183 req, out := c.DescribeMeshRequest(input) 1184 return out, req.Send() 1185} 1186 1187// DescribeMeshWithContext is the same as DescribeMesh with the addition of 1188// the ability to pass a context and additional request options. 1189// 1190// See DescribeMesh for details on how to use this API operation. 1191// 1192// The context must be non-nil and will be used for request cancellation. If 1193// the context is nil a panic will occur. In the future the SDK may create 1194// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1195// for more information on using Contexts. 1196func (c *AppMesh) DescribeMeshWithContext(ctx aws.Context, input *DescribeMeshInput, opts ...request.Option) (*DescribeMeshOutput, error) { 1197 req, out := c.DescribeMeshRequest(input) 1198 req.SetContext(ctx) 1199 req.ApplyOptions(opts...) 1200 return out, req.Send() 1201} 1202 1203const opDescribeRoute = "DescribeRoute" 1204 1205// DescribeRouteRequest generates a "aws/request.Request" representing the 1206// client's request for the DescribeRoute operation. The "output" return 1207// value will be populated with the request's response once the request completes 1208// successfully. 1209// 1210// Use "Send" method on the returned Request to send the API call to the service. 1211// the "output" return value is not valid until after Send returns without error. 1212// 1213// See DescribeRoute for more information on using the DescribeRoute 1214// API call, and error handling. 1215// 1216// This method is useful when you want to inject custom logic or configuration 1217// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1218// 1219// 1220// // Example sending a request using the DescribeRouteRequest method. 1221// req, resp := client.DescribeRouteRequest(params) 1222// 1223// err := req.Send() 1224// if err == nil { // resp is now filled 1225// fmt.Println(resp) 1226// } 1227// 1228// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeRoute 1229func (c *AppMesh) DescribeRouteRequest(input *DescribeRouteInput) (req *request.Request, output *DescribeRouteOutput) { 1230 op := &request.Operation{ 1231 Name: opDescribeRoute, 1232 HTTPMethod: "GET", 1233 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes/{routeName}", 1234 } 1235 1236 if input == nil { 1237 input = &DescribeRouteInput{} 1238 } 1239 1240 output = &DescribeRouteOutput{} 1241 req = c.newRequest(op, input, output) 1242 return 1243} 1244 1245// DescribeRoute API operation for AWS App Mesh. 1246// 1247// Describes an existing route. 1248// 1249// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1250// with awserr.Error's Code and Message methods to get detailed information about 1251// the error. 1252// 1253// See the AWS API reference guide for AWS App Mesh's 1254// API operation DescribeRoute for usage and error information. 1255// 1256// Returned Error Codes: 1257// * ErrCodeBadRequestException "BadRequestException" 1258// The request syntax was malformed. Check your request syntax and try again. 1259// 1260// * ErrCodeForbiddenException "ForbiddenException" 1261// You don't have permissions to perform this action. 1262// 1263// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1264// The request processing has failed because of an unknown error, exception, 1265// or failure. 1266// 1267// * ErrCodeNotFoundException "NotFoundException" 1268// The specified resource doesn't exist. Check your request syntax and try again. 1269// 1270// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 1271// The request has failed due to a temporary failure of the service. 1272// 1273// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1274// The maximum request rate permitted by the App Mesh APIs has been exceeded 1275// for your account. For best results, use an increasing or variable sleep interval 1276// between requests. 1277// 1278// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeRoute 1279func (c *AppMesh) DescribeRoute(input *DescribeRouteInput) (*DescribeRouteOutput, error) { 1280 req, out := c.DescribeRouteRequest(input) 1281 return out, req.Send() 1282} 1283 1284// DescribeRouteWithContext is the same as DescribeRoute with the addition of 1285// the ability to pass a context and additional request options. 1286// 1287// See DescribeRoute for details on how to use this API operation. 1288// 1289// The context must be non-nil and will be used for request cancellation. If 1290// the context is nil a panic will occur. In the future the SDK may create 1291// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1292// for more information on using Contexts. 1293func (c *AppMesh) DescribeRouteWithContext(ctx aws.Context, input *DescribeRouteInput, opts ...request.Option) (*DescribeRouteOutput, error) { 1294 req, out := c.DescribeRouteRequest(input) 1295 req.SetContext(ctx) 1296 req.ApplyOptions(opts...) 1297 return out, req.Send() 1298} 1299 1300const opDescribeVirtualNode = "DescribeVirtualNode" 1301 1302// DescribeVirtualNodeRequest generates a "aws/request.Request" representing the 1303// client's request for the DescribeVirtualNode operation. The "output" return 1304// value will be populated with the request's response once the request completes 1305// successfully. 1306// 1307// Use "Send" method on the returned Request to send the API call to the service. 1308// the "output" return value is not valid until after Send returns without error. 1309// 1310// See DescribeVirtualNode for more information on using the DescribeVirtualNode 1311// API call, and error handling. 1312// 1313// This method is useful when you want to inject custom logic or configuration 1314// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1315// 1316// 1317// // Example sending a request using the DescribeVirtualNodeRequest method. 1318// req, resp := client.DescribeVirtualNodeRequest(params) 1319// 1320// err := req.Send() 1321// if err == nil { // resp is now filled 1322// fmt.Println(resp) 1323// } 1324// 1325// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualNode 1326func (c *AppMesh) DescribeVirtualNodeRequest(input *DescribeVirtualNodeInput) (req *request.Request, output *DescribeVirtualNodeOutput) { 1327 op := &request.Operation{ 1328 Name: opDescribeVirtualNode, 1329 HTTPMethod: "GET", 1330 HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes/{virtualNodeName}", 1331 } 1332 1333 if input == nil { 1334 input = &DescribeVirtualNodeInput{} 1335 } 1336 1337 output = &DescribeVirtualNodeOutput{} 1338 req = c.newRequest(op, input, output) 1339 return 1340} 1341 1342// DescribeVirtualNode API operation for AWS App Mesh. 1343// 1344// Describes an existing virtual node. 1345// 1346// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1347// with awserr.Error's Code and Message methods to get detailed information about 1348// the error. 1349// 1350// See the AWS API reference guide for AWS App Mesh's 1351// API operation DescribeVirtualNode for usage and error information. 1352// 1353// Returned Error Codes: 1354// * ErrCodeBadRequestException "BadRequestException" 1355// The request syntax was malformed. Check your request syntax and try again. 1356// 1357// * ErrCodeForbiddenException "ForbiddenException" 1358// You don't have permissions to perform this action. 1359// 1360// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1361// The request processing has failed because of an unknown error, exception, 1362// or failure. 1363// 1364// * ErrCodeNotFoundException "NotFoundException" 1365// The specified resource doesn't exist. Check your request syntax and try again. 1366// 1367// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 1368// The request has failed due to a temporary failure of the service. 1369// 1370// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1371// The maximum request rate permitted by the App Mesh APIs has been exceeded 1372// for your account. For best results, use an increasing or variable sleep interval 1373// between requests. 1374// 1375// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualNode 1376func (c *AppMesh) DescribeVirtualNode(input *DescribeVirtualNodeInput) (*DescribeVirtualNodeOutput, error) { 1377 req, out := c.DescribeVirtualNodeRequest(input) 1378 return out, req.Send() 1379} 1380 1381// DescribeVirtualNodeWithContext is the same as DescribeVirtualNode with the addition of 1382// the ability to pass a context and additional request options. 1383// 1384// See DescribeVirtualNode for details on how to use this API operation. 1385// 1386// The context must be non-nil and will be used for request cancellation. If 1387// the context is nil a panic will occur. In the future the SDK may create 1388// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1389// for more information on using Contexts. 1390func (c *AppMesh) DescribeVirtualNodeWithContext(ctx aws.Context, input *DescribeVirtualNodeInput, opts ...request.Option) (*DescribeVirtualNodeOutput, error) { 1391 req, out := c.DescribeVirtualNodeRequest(input) 1392 req.SetContext(ctx) 1393 req.ApplyOptions(opts...) 1394 return out, req.Send() 1395} 1396 1397const opDescribeVirtualRouter = "DescribeVirtualRouter" 1398 1399// DescribeVirtualRouterRequest generates a "aws/request.Request" representing the 1400// client's request for the DescribeVirtualRouter operation. The "output" return 1401// value will be populated with the request's response once the request completes 1402// successfully. 1403// 1404// Use "Send" method on the returned Request to send the API call to the service. 1405// the "output" return value is not valid until after Send returns without error. 1406// 1407// See DescribeVirtualRouter for more information on using the DescribeVirtualRouter 1408// API call, and error handling. 1409// 1410// This method is useful when you want to inject custom logic or configuration 1411// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1412// 1413// 1414// // Example sending a request using the DescribeVirtualRouterRequest method. 1415// req, resp := client.DescribeVirtualRouterRequest(params) 1416// 1417// err := req.Send() 1418// if err == nil { // resp is now filled 1419// fmt.Println(resp) 1420// } 1421// 1422// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualRouter 1423func (c *AppMesh) DescribeVirtualRouterRequest(input *DescribeVirtualRouterInput) (req *request.Request, output *DescribeVirtualRouterOutput) { 1424 op := &request.Operation{ 1425 Name: opDescribeVirtualRouter, 1426 HTTPMethod: "GET", 1427 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouters/{virtualRouterName}", 1428 } 1429 1430 if input == nil { 1431 input = &DescribeVirtualRouterInput{} 1432 } 1433 1434 output = &DescribeVirtualRouterOutput{} 1435 req = c.newRequest(op, input, output) 1436 return 1437} 1438 1439// DescribeVirtualRouter API operation for AWS App Mesh. 1440// 1441// Describes an existing virtual router. 1442// 1443// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1444// with awserr.Error's Code and Message methods to get detailed information about 1445// the error. 1446// 1447// See the AWS API reference guide for AWS App Mesh's 1448// API operation DescribeVirtualRouter for usage and error information. 1449// 1450// Returned Error Codes: 1451// * ErrCodeBadRequestException "BadRequestException" 1452// The request syntax was malformed. Check your request syntax and try again. 1453// 1454// * ErrCodeForbiddenException "ForbiddenException" 1455// You don't have permissions to perform this action. 1456// 1457// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1458// The request processing has failed because of an unknown error, exception, 1459// or failure. 1460// 1461// * ErrCodeNotFoundException "NotFoundException" 1462// The specified resource doesn't exist. Check your request syntax and try again. 1463// 1464// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 1465// The request has failed due to a temporary failure of the service. 1466// 1467// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1468// The maximum request rate permitted by the App Mesh APIs has been exceeded 1469// for your account. For best results, use an increasing or variable sleep interval 1470// between requests. 1471// 1472// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualRouter 1473func (c *AppMesh) DescribeVirtualRouter(input *DescribeVirtualRouterInput) (*DescribeVirtualRouterOutput, error) { 1474 req, out := c.DescribeVirtualRouterRequest(input) 1475 return out, req.Send() 1476} 1477 1478// DescribeVirtualRouterWithContext is the same as DescribeVirtualRouter with the addition of 1479// the ability to pass a context and additional request options. 1480// 1481// See DescribeVirtualRouter for details on how to use this API operation. 1482// 1483// The context must be non-nil and will be used for request cancellation. If 1484// the context is nil a panic will occur. In the future the SDK may create 1485// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1486// for more information on using Contexts. 1487func (c *AppMesh) DescribeVirtualRouterWithContext(ctx aws.Context, input *DescribeVirtualRouterInput, opts ...request.Option) (*DescribeVirtualRouterOutput, error) { 1488 req, out := c.DescribeVirtualRouterRequest(input) 1489 req.SetContext(ctx) 1490 req.ApplyOptions(opts...) 1491 return out, req.Send() 1492} 1493 1494const opDescribeVirtualService = "DescribeVirtualService" 1495 1496// DescribeVirtualServiceRequest generates a "aws/request.Request" representing the 1497// client's request for the DescribeVirtualService operation. The "output" return 1498// value will be populated with the request's response once the request completes 1499// successfully. 1500// 1501// Use "Send" method on the returned Request to send the API call to the service. 1502// the "output" return value is not valid until after Send returns without error. 1503// 1504// See DescribeVirtualService for more information on using the DescribeVirtualService 1505// API call, and error handling. 1506// 1507// This method is useful when you want to inject custom logic or configuration 1508// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1509// 1510// 1511// // Example sending a request using the DescribeVirtualServiceRequest method. 1512// req, resp := client.DescribeVirtualServiceRequest(params) 1513// 1514// err := req.Send() 1515// if err == nil { // resp is now filled 1516// fmt.Println(resp) 1517// } 1518// 1519// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualService 1520func (c *AppMesh) DescribeVirtualServiceRequest(input *DescribeVirtualServiceInput) (req *request.Request, output *DescribeVirtualServiceOutput) { 1521 op := &request.Operation{ 1522 Name: opDescribeVirtualService, 1523 HTTPMethod: "GET", 1524 HTTPPath: "/v20190125/meshes/{meshName}/virtualServices/{virtualServiceName}", 1525 } 1526 1527 if input == nil { 1528 input = &DescribeVirtualServiceInput{} 1529 } 1530 1531 output = &DescribeVirtualServiceOutput{} 1532 req = c.newRequest(op, input, output) 1533 return 1534} 1535 1536// DescribeVirtualService API operation for AWS App Mesh. 1537// 1538// Describes an existing virtual service. 1539// 1540// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1541// with awserr.Error's Code and Message methods to get detailed information about 1542// the error. 1543// 1544// See the AWS API reference guide for AWS App Mesh's 1545// API operation DescribeVirtualService for usage and error information. 1546// 1547// Returned Error Codes: 1548// * ErrCodeBadRequestException "BadRequestException" 1549// The request syntax was malformed. Check your request syntax and try again. 1550// 1551// * ErrCodeForbiddenException "ForbiddenException" 1552// You don't have permissions to perform this action. 1553// 1554// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1555// The request processing has failed because of an unknown error, exception, 1556// or failure. 1557// 1558// * ErrCodeNotFoundException "NotFoundException" 1559// The specified resource doesn't exist. Check your request syntax and try again. 1560// 1561// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 1562// The request has failed due to a temporary failure of the service. 1563// 1564// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1565// The maximum request rate permitted by the App Mesh APIs has been exceeded 1566// for your account. For best results, use an increasing or variable sleep interval 1567// between requests. 1568// 1569// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualService 1570func (c *AppMesh) DescribeVirtualService(input *DescribeVirtualServiceInput) (*DescribeVirtualServiceOutput, error) { 1571 req, out := c.DescribeVirtualServiceRequest(input) 1572 return out, req.Send() 1573} 1574 1575// DescribeVirtualServiceWithContext is the same as DescribeVirtualService with the addition of 1576// the ability to pass a context and additional request options. 1577// 1578// See DescribeVirtualService for details on how to use this API operation. 1579// 1580// The context must be non-nil and will be used for request cancellation. If 1581// the context is nil a panic will occur. In the future the SDK may create 1582// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1583// for more information on using Contexts. 1584func (c *AppMesh) DescribeVirtualServiceWithContext(ctx aws.Context, input *DescribeVirtualServiceInput, opts ...request.Option) (*DescribeVirtualServiceOutput, error) { 1585 req, out := c.DescribeVirtualServiceRequest(input) 1586 req.SetContext(ctx) 1587 req.ApplyOptions(opts...) 1588 return out, req.Send() 1589} 1590 1591const opListMeshes = "ListMeshes" 1592 1593// ListMeshesRequest generates a "aws/request.Request" representing the 1594// client's request for the ListMeshes operation. The "output" return 1595// value will be populated with the request's response once the request completes 1596// successfully. 1597// 1598// Use "Send" method on the returned Request to send the API call to the service. 1599// the "output" return value is not valid until after Send returns without error. 1600// 1601// See ListMeshes for more information on using the ListMeshes 1602// API call, and error handling. 1603// 1604// This method is useful when you want to inject custom logic or configuration 1605// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1606// 1607// 1608// // Example sending a request using the ListMeshesRequest method. 1609// req, resp := client.ListMeshesRequest(params) 1610// 1611// err := req.Send() 1612// if err == nil { // resp is now filled 1613// fmt.Println(resp) 1614// } 1615// 1616// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListMeshes 1617func (c *AppMesh) ListMeshesRequest(input *ListMeshesInput) (req *request.Request, output *ListMeshesOutput) { 1618 op := &request.Operation{ 1619 Name: opListMeshes, 1620 HTTPMethod: "GET", 1621 HTTPPath: "/v20190125/meshes", 1622 Paginator: &request.Paginator{ 1623 InputTokens: []string{"nextToken"}, 1624 OutputTokens: []string{"nextToken"}, 1625 LimitToken: "limit", 1626 TruncationToken: "", 1627 }, 1628 } 1629 1630 if input == nil { 1631 input = &ListMeshesInput{} 1632 } 1633 1634 output = &ListMeshesOutput{} 1635 req = c.newRequest(op, input, output) 1636 return 1637} 1638 1639// ListMeshes API operation for AWS App Mesh. 1640// 1641// Returns a list of existing service meshes. 1642// 1643// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1644// with awserr.Error's Code and Message methods to get detailed information about 1645// the error. 1646// 1647// See the AWS API reference guide for AWS App Mesh's 1648// API operation ListMeshes for usage and error information. 1649// 1650// Returned Error Codes: 1651// * ErrCodeBadRequestException "BadRequestException" 1652// The request syntax was malformed. Check your request syntax and try again. 1653// 1654// * ErrCodeForbiddenException "ForbiddenException" 1655// You don't have permissions to perform this action. 1656// 1657// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1658// The request processing has failed because of an unknown error, exception, 1659// or failure. 1660// 1661// * ErrCodeNotFoundException "NotFoundException" 1662// The specified resource doesn't exist. Check your request syntax and try again. 1663// 1664// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 1665// The request has failed due to a temporary failure of the service. 1666// 1667// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1668// The maximum request rate permitted by the App Mesh APIs has been exceeded 1669// for your account. For best results, use an increasing or variable sleep interval 1670// between requests. 1671// 1672// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListMeshes 1673func (c *AppMesh) ListMeshes(input *ListMeshesInput) (*ListMeshesOutput, error) { 1674 req, out := c.ListMeshesRequest(input) 1675 return out, req.Send() 1676} 1677 1678// ListMeshesWithContext is the same as ListMeshes with the addition of 1679// the ability to pass a context and additional request options. 1680// 1681// See ListMeshes for details on how to use this API operation. 1682// 1683// The context must be non-nil and will be used for request cancellation. If 1684// the context is nil a panic will occur. In the future the SDK may create 1685// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1686// for more information on using Contexts. 1687func (c *AppMesh) ListMeshesWithContext(ctx aws.Context, input *ListMeshesInput, opts ...request.Option) (*ListMeshesOutput, error) { 1688 req, out := c.ListMeshesRequest(input) 1689 req.SetContext(ctx) 1690 req.ApplyOptions(opts...) 1691 return out, req.Send() 1692} 1693 1694// ListMeshesPages iterates over the pages of a ListMeshes operation, 1695// calling the "fn" function with the response data for each page. To stop 1696// iterating, return false from the fn function. 1697// 1698// See ListMeshes method for more information on how to use this operation. 1699// 1700// Note: This operation can generate multiple requests to a service. 1701// 1702// // Example iterating over at most 3 pages of a ListMeshes operation. 1703// pageNum := 0 1704// err := client.ListMeshesPages(params, 1705// func(page *appmesh.ListMeshesOutput, lastPage bool) bool { 1706// pageNum++ 1707// fmt.Println(page) 1708// return pageNum <= 3 1709// }) 1710// 1711func (c *AppMesh) ListMeshesPages(input *ListMeshesInput, fn func(*ListMeshesOutput, bool) bool) error { 1712 return c.ListMeshesPagesWithContext(aws.BackgroundContext(), input, fn) 1713} 1714 1715// ListMeshesPagesWithContext same as ListMeshesPages except 1716// it takes a Context and allows setting request options on the pages. 1717// 1718// The context must be non-nil and will be used for request cancellation. If 1719// the context is nil a panic will occur. In the future the SDK may create 1720// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1721// for more information on using Contexts. 1722func (c *AppMesh) ListMeshesPagesWithContext(ctx aws.Context, input *ListMeshesInput, fn func(*ListMeshesOutput, bool) bool, opts ...request.Option) error { 1723 p := request.Pagination{ 1724 NewRequest: func() (*request.Request, error) { 1725 var inCpy *ListMeshesInput 1726 if input != nil { 1727 tmp := *input 1728 inCpy = &tmp 1729 } 1730 req, _ := c.ListMeshesRequest(inCpy) 1731 req.SetContext(ctx) 1732 req.ApplyOptions(opts...) 1733 return req, nil 1734 }, 1735 } 1736 1737 cont := true 1738 for p.Next() && cont { 1739 cont = fn(p.Page().(*ListMeshesOutput), !p.HasNextPage()) 1740 } 1741 return p.Err() 1742} 1743 1744const opListRoutes = "ListRoutes" 1745 1746// ListRoutesRequest generates a "aws/request.Request" representing the 1747// client's request for the ListRoutes operation. The "output" return 1748// value will be populated with the request's response once the request completes 1749// successfully. 1750// 1751// Use "Send" method on the returned Request to send the API call to the service. 1752// the "output" return value is not valid until after Send returns without error. 1753// 1754// See ListRoutes for more information on using the ListRoutes 1755// API call, and error handling. 1756// 1757// This method is useful when you want to inject custom logic or configuration 1758// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1759// 1760// 1761// // Example sending a request using the ListRoutesRequest method. 1762// req, resp := client.ListRoutesRequest(params) 1763// 1764// err := req.Send() 1765// if err == nil { // resp is now filled 1766// fmt.Println(resp) 1767// } 1768// 1769// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListRoutes 1770func (c *AppMesh) ListRoutesRequest(input *ListRoutesInput) (req *request.Request, output *ListRoutesOutput) { 1771 op := &request.Operation{ 1772 Name: opListRoutes, 1773 HTTPMethod: "GET", 1774 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes", 1775 Paginator: &request.Paginator{ 1776 InputTokens: []string{"nextToken"}, 1777 OutputTokens: []string{"nextToken"}, 1778 LimitToken: "limit", 1779 TruncationToken: "", 1780 }, 1781 } 1782 1783 if input == nil { 1784 input = &ListRoutesInput{} 1785 } 1786 1787 output = &ListRoutesOutput{} 1788 req = c.newRequest(op, input, output) 1789 return 1790} 1791 1792// ListRoutes API operation for AWS App Mesh. 1793// 1794// Returns a list of existing routes in a service mesh. 1795// 1796// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1797// with awserr.Error's Code and Message methods to get detailed information about 1798// the error. 1799// 1800// See the AWS API reference guide for AWS App Mesh's 1801// API operation ListRoutes for usage and error information. 1802// 1803// Returned Error Codes: 1804// * ErrCodeBadRequestException "BadRequestException" 1805// The request syntax was malformed. Check your request syntax and try again. 1806// 1807// * ErrCodeForbiddenException "ForbiddenException" 1808// You don't have permissions to perform this action. 1809// 1810// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1811// The request processing has failed because of an unknown error, exception, 1812// or failure. 1813// 1814// * ErrCodeNotFoundException "NotFoundException" 1815// The specified resource doesn't exist. Check your request syntax and try again. 1816// 1817// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 1818// The request has failed due to a temporary failure of the service. 1819// 1820// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1821// The maximum request rate permitted by the App Mesh APIs has been exceeded 1822// for your account. For best results, use an increasing or variable sleep interval 1823// between requests. 1824// 1825// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListRoutes 1826func (c *AppMesh) ListRoutes(input *ListRoutesInput) (*ListRoutesOutput, error) { 1827 req, out := c.ListRoutesRequest(input) 1828 return out, req.Send() 1829} 1830 1831// ListRoutesWithContext is the same as ListRoutes with the addition of 1832// the ability to pass a context and additional request options. 1833// 1834// See ListRoutes for details on how to use this API operation. 1835// 1836// The context must be non-nil and will be used for request cancellation. If 1837// the context is nil a panic will occur. In the future the SDK may create 1838// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1839// for more information on using Contexts. 1840func (c *AppMesh) ListRoutesWithContext(ctx aws.Context, input *ListRoutesInput, opts ...request.Option) (*ListRoutesOutput, error) { 1841 req, out := c.ListRoutesRequest(input) 1842 req.SetContext(ctx) 1843 req.ApplyOptions(opts...) 1844 return out, req.Send() 1845} 1846 1847// ListRoutesPages iterates over the pages of a ListRoutes operation, 1848// calling the "fn" function with the response data for each page. To stop 1849// iterating, return false from the fn function. 1850// 1851// See ListRoutes method for more information on how to use this operation. 1852// 1853// Note: This operation can generate multiple requests to a service. 1854// 1855// // Example iterating over at most 3 pages of a ListRoutes operation. 1856// pageNum := 0 1857// err := client.ListRoutesPages(params, 1858// func(page *appmesh.ListRoutesOutput, lastPage bool) bool { 1859// pageNum++ 1860// fmt.Println(page) 1861// return pageNum <= 3 1862// }) 1863// 1864func (c *AppMesh) ListRoutesPages(input *ListRoutesInput, fn func(*ListRoutesOutput, bool) bool) error { 1865 return c.ListRoutesPagesWithContext(aws.BackgroundContext(), input, fn) 1866} 1867 1868// ListRoutesPagesWithContext same as ListRoutesPages except 1869// it takes a Context and allows setting request options on the pages. 1870// 1871// The context must be non-nil and will be used for request cancellation. If 1872// the context is nil a panic will occur. In the future the SDK may create 1873// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1874// for more information on using Contexts. 1875func (c *AppMesh) ListRoutesPagesWithContext(ctx aws.Context, input *ListRoutesInput, fn func(*ListRoutesOutput, bool) bool, opts ...request.Option) error { 1876 p := request.Pagination{ 1877 NewRequest: func() (*request.Request, error) { 1878 var inCpy *ListRoutesInput 1879 if input != nil { 1880 tmp := *input 1881 inCpy = &tmp 1882 } 1883 req, _ := c.ListRoutesRequest(inCpy) 1884 req.SetContext(ctx) 1885 req.ApplyOptions(opts...) 1886 return req, nil 1887 }, 1888 } 1889 1890 cont := true 1891 for p.Next() && cont { 1892 cont = fn(p.Page().(*ListRoutesOutput), !p.HasNextPage()) 1893 } 1894 return p.Err() 1895} 1896 1897const opListTagsForResource = "ListTagsForResource" 1898 1899// ListTagsForResourceRequest generates a "aws/request.Request" representing the 1900// client's request for the ListTagsForResource operation. The "output" return 1901// value will be populated with the request's response once the request completes 1902// successfully. 1903// 1904// Use "Send" method on the returned Request to send the API call to the service. 1905// the "output" return value is not valid until after Send returns without error. 1906// 1907// See ListTagsForResource for more information on using the ListTagsForResource 1908// API call, and error handling. 1909// 1910// This method is useful when you want to inject custom logic or configuration 1911// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1912// 1913// 1914// // Example sending a request using the ListTagsForResourceRequest method. 1915// req, resp := client.ListTagsForResourceRequest(params) 1916// 1917// err := req.Send() 1918// if err == nil { // resp is now filled 1919// fmt.Println(resp) 1920// } 1921// 1922// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListTagsForResource 1923func (c *AppMesh) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { 1924 op := &request.Operation{ 1925 Name: opListTagsForResource, 1926 HTTPMethod: "GET", 1927 HTTPPath: "/v20190125/tags", 1928 Paginator: &request.Paginator{ 1929 InputTokens: []string{"nextToken"}, 1930 OutputTokens: []string{"nextToken"}, 1931 LimitToken: "limit", 1932 TruncationToken: "", 1933 }, 1934 } 1935 1936 if input == nil { 1937 input = &ListTagsForResourceInput{} 1938 } 1939 1940 output = &ListTagsForResourceOutput{} 1941 req = c.newRequest(op, input, output) 1942 return 1943} 1944 1945// ListTagsForResource API operation for AWS App Mesh. 1946// 1947// List the tags for an App Mesh resource. 1948// 1949// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1950// with awserr.Error's Code and Message methods to get detailed information about 1951// the error. 1952// 1953// See the AWS API reference guide for AWS App Mesh's 1954// API operation ListTagsForResource for usage and error information. 1955// 1956// Returned Error Codes: 1957// * ErrCodeBadRequestException "BadRequestException" 1958// The request syntax was malformed. Check your request syntax and try again. 1959// 1960// * ErrCodeForbiddenException "ForbiddenException" 1961// You don't have permissions to perform this action. 1962// 1963// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1964// The request processing has failed because of an unknown error, exception, 1965// or failure. 1966// 1967// * ErrCodeNotFoundException "NotFoundException" 1968// The specified resource doesn't exist. Check your request syntax and try again. 1969// 1970// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 1971// The request has failed due to a temporary failure of the service. 1972// 1973// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1974// The maximum request rate permitted by the App Mesh APIs has been exceeded 1975// for your account. For best results, use an increasing or variable sleep interval 1976// between requests. 1977// 1978// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListTagsForResource 1979func (c *AppMesh) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { 1980 req, out := c.ListTagsForResourceRequest(input) 1981 return out, req.Send() 1982} 1983 1984// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of 1985// the ability to pass a context and additional request options. 1986// 1987// See ListTagsForResource for details on how to use this API operation. 1988// 1989// The context must be non-nil and will be used for request cancellation. If 1990// the context is nil a panic will occur. In the future the SDK may create 1991// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1992// for more information on using Contexts. 1993func (c *AppMesh) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { 1994 req, out := c.ListTagsForResourceRequest(input) 1995 req.SetContext(ctx) 1996 req.ApplyOptions(opts...) 1997 return out, req.Send() 1998} 1999 2000// ListTagsForResourcePages iterates over the pages of a ListTagsForResource operation, 2001// calling the "fn" function with the response data for each page. To stop 2002// iterating, return false from the fn function. 2003// 2004// See ListTagsForResource method for more information on how to use this operation. 2005// 2006// Note: This operation can generate multiple requests to a service. 2007// 2008// // Example iterating over at most 3 pages of a ListTagsForResource operation. 2009// pageNum := 0 2010// err := client.ListTagsForResourcePages(params, 2011// func(page *appmesh.ListTagsForResourceOutput, lastPage bool) bool { 2012// pageNum++ 2013// fmt.Println(page) 2014// return pageNum <= 3 2015// }) 2016// 2017func (c *AppMesh) ListTagsForResourcePages(input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool) error { 2018 return c.ListTagsForResourcePagesWithContext(aws.BackgroundContext(), input, fn) 2019} 2020 2021// ListTagsForResourcePagesWithContext same as ListTagsForResourcePages except 2022// it takes a Context and allows setting request options on the pages. 2023// 2024// The context must be non-nil and will be used for request cancellation. If 2025// the context is nil a panic will occur. In the future the SDK may create 2026// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2027// for more information on using Contexts. 2028func (c *AppMesh) ListTagsForResourcePagesWithContext(ctx aws.Context, input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool, opts ...request.Option) error { 2029 p := request.Pagination{ 2030 NewRequest: func() (*request.Request, error) { 2031 var inCpy *ListTagsForResourceInput 2032 if input != nil { 2033 tmp := *input 2034 inCpy = &tmp 2035 } 2036 req, _ := c.ListTagsForResourceRequest(inCpy) 2037 req.SetContext(ctx) 2038 req.ApplyOptions(opts...) 2039 return req, nil 2040 }, 2041 } 2042 2043 cont := true 2044 for p.Next() && cont { 2045 cont = fn(p.Page().(*ListTagsForResourceOutput), !p.HasNextPage()) 2046 } 2047 return p.Err() 2048} 2049 2050const opListVirtualNodes = "ListVirtualNodes" 2051 2052// ListVirtualNodesRequest generates a "aws/request.Request" representing the 2053// client's request for the ListVirtualNodes operation. The "output" return 2054// value will be populated with the request's response once the request completes 2055// successfully. 2056// 2057// Use "Send" method on the returned Request to send the API call to the service. 2058// the "output" return value is not valid until after Send returns without error. 2059// 2060// See ListVirtualNodes for more information on using the ListVirtualNodes 2061// API call, and error handling. 2062// 2063// This method is useful when you want to inject custom logic or configuration 2064// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2065// 2066// 2067// // Example sending a request using the ListVirtualNodesRequest method. 2068// req, resp := client.ListVirtualNodesRequest(params) 2069// 2070// err := req.Send() 2071// if err == nil { // resp is now filled 2072// fmt.Println(resp) 2073// } 2074// 2075// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualNodes 2076func (c *AppMesh) ListVirtualNodesRequest(input *ListVirtualNodesInput) (req *request.Request, output *ListVirtualNodesOutput) { 2077 op := &request.Operation{ 2078 Name: opListVirtualNodes, 2079 HTTPMethod: "GET", 2080 HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes", 2081 Paginator: &request.Paginator{ 2082 InputTokens: []string{"nextToken"}, 2083 OutputTokens: []string{"nextToken"}, 2084 LimitToken: "limit", 2085 TruncationToken: "", 2086 }, 2087 } 2088 2089 if input == nil { 2090 input = &ListVirtualNodesInput{} 2091 } 2092 2093 output = &ListVirtualNodesOutput{} 2094 req = c.newRequest(op, input, output) 2095 return 2096} 2097 2098// ListVirtualNodes API operation for AWS App Mesh. 2099// 2100// Returns a list of existing virtual nodes. 2101// 2102// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2103// with awserr.Error's Code and Message methods to get detailed information about 2104// the error. 2105// 2106// See the AWS API reference guide for AWS App Mesh's 2107// API operation ListVirtualNodes for usage and error information. 2108// 2109// Returned Error Codes: 2110// * ErrCodeBadRequestException "BadRequestException" 2111// The request syntax was malformed. Check your request syntax and try again. 2112// 2113// * ErrCodeForbiddenException "ForbiddenException" 2114// You don't have permissions to perform this action. 2115// 2116// * ErrCodeInternalServerErrorException "InternalServerErrorException" 2117// The request processing has failed because of an unknown error, exception, 2118// or failure. 2119// 2120// * ErrCodeNotFoundException "NotFoundException" 2121// The specified resource doesn't exist. Check your request syntax and try again. 2122// 2123// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 2124// The request has failed due to a temporary failure of the service. 2125// 2126// * ErrCodeTooManyRequestsException "TooManyRequestsException" 2127// The maximum request rate permitted by the App Mesh APIs has been exceeded 2128// for your account. For best results, use an increasing or variable sleep interval 2129// between requests. 2130// 2131// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualNodes 2132func (c *AppMesh) ListVirtualNodes(input *ListVirtualNodesInput) (*ListVirtualNodesOutput, error) { 2133 req, out := c.ListVirtualNodesRequest(input) 2134 return out, req.Send() 2135} 2136 2137// ListVirtualNodesWithContext is the same as ListVirtualNodes with the addition of 2138// the ability to pass a context and additional request options. 2139// 2140// See ListVirtualNodes for details on how to use this API operation. 2141// 2142// The context must be non-nil and will be used for request cancellation. If 2143// the context is nil a panic will occur. In the future the SDK may create 2144// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2145// for more information on using Contexts. 2146func (c *AppMesh) ListVirtualNodesWithContext(ctx aws.Context, input *ListVirtualNodesInput, opts ...request.Option) (*ListVirtualNodesOutput, error) { 2147 req, out := c.ListVirtualNodesRequest(input) 2148 req.SetContext(ctx) 2149 req.ApplyOptions(opts...) 2150 return out, req.Send() 2151} 2152 2153// ListVirtualNodesPages iterates over the pages of a ListVirtualNodes operation, 2154// calling the "fn" function with the response data for each page. To stop 2155// iterating, return false from the fn function. 2156// 2157// See ListVirtualNodes method for more information on how to use this operation. 2158// 2159// Note: This operation can generate multiple requests to a service. 2160// 2161// // Example iterating over at most 3 pages of a ListVirtualNodes operation. 2162// pageNum := 0 2163// err := client.ListVirtualNodesPages(params, 2164// func(page *appmesh.ListVirtualNodesOutput, lastPage bool) bool { 2165// pageNum++ 2166// fmt.Println(page) 2167// return pageNum <= 3 2168// }) 2169// 2170func (c *AppMesh) ListVirtualNodesPages(input *ListVirtualNodesInput, fn func(*ListVirtualNodesOutput, bool) bool) error { 2171 return c.ListVirtualNodesPagesWithContext(aws.BackgroundContext(), input, fn) 2172} 2173 2174// ListVirtualNodesPagesWithContext same as ListVirtualNodesPages except 2175// it takes a Context and allows setting request options on the pages. 2176// 2177// The context must be non-nil and will be used for request cancellation. If 2178// the context is nil a panic will occur. In the future the SDK may create 2179// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2180// for more information on using Contexts. 2181func (c *AppMesh) ListVirtualNodesPagesWithContext(ctx aws.Context, input *ListVirtualNodesInput, fn func(*ListVirtualNodesOutput, bool) bool, opts ...request.Option) error { 2182 p := request.Pagination{ 2183 NewRequest: func() (*request.Request, error) { 2184 var inCpy *ListVirtualNodesInput 2185 if input != nil { 2186 tmp := *input 2187 inCpy = &tmp 2188 } 2189 req, _ := c.ListVirtualNodesRequest(inCpy) 2190 req.SetContext(ctx) 2191 req.ApplyOptions(opts...) 2192 return req, nil 2193 }, 2194 } 2195 2196 cont := true 2197 for p.Next() && cont { 2198 cont = fn(p.Page().(*ListVirtualNodesOutput), !p.HasNextPage()) 2199 } 2200 return p.Err() 2201} 2202 2203const opListVirtualRouters = "ListVirtualRouters" 2204 2205// ListVirtualRoutersRequest generates a "aws/request.Request" representing the 2206// client's request for the ListVirtualRouters operation. The "output" return 2207// value will be populated with the request's response once the request completes 2208// successfully. 2209// 2210// Use "Send" method on the returned Request to send the API call to the service. 2211// the "output" return value is not valid until after Send returns without error. 2212// 2213// See ListVirtualRouters for more information on using the ListVirtualRouters 2214// API call, and error handling. 2215// 2216// This method is useful when you want to inject custom logic or configuration 2217// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2218// 2219// 2220// // Example sending a request using the ListVirtualRoutersRequest method. 2221// req, resp := client.ListVirtualRoutersRequest(params) 2222// 2223// err := req.Send() 2224// if err == nil { // resp is now filled 2225// fmt.Println(resp) 2226// } 2227// 2228// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualRouters 2229func (c *AppMesh) ListVirtualRoutersRequest(input *ListVirtualRoutersInput) (req *request.Request, output *ListVirtualRoutersOutput) { 2230 op := &request.Operation{ 2231 Name: opListVirtualRouters, 2232 HTTPMethod: "GET", 2233 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouters", 2234 Paginator: &request.Paginator{ 2235 InputTokens: []string{"nextToken"}, 2236 OutputTokens: []string{"nextToken"}, 2237 LimitToken: "limit", 2238 TruncationToken: "", 2239 }, 2240 } 2241 2242 if input == nil { 2243 input = &ListVirtualRoutersInput{} 2244 } 2245 2246 output = &ListVirtualRoutersOutput{} 2247 req = c.newRequest(op, input, output) 2248 return 2249} 2250 2251// ListVirtualRouters API operation for AWS App Mesh. 2252// 2253// Returns a list of existing virtual routers in a service mesh. 2254// 2255// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2256// with awserr.Error's Code and Message methods to get detailed information about 2257// the error. 2258// 2259// See the AWS API reference guide for AWS App Mesh's 2260// API operation ListVirtualRouters for usage and error information. 2261// 2262// Returned Error Codes: 2263// * ErrCodeBadRequestException "BadRequestException" 2264// The request syntax was malformed. Check your request syntax and try again. 2265// 2266// * ErrCodeForbiddenException "ForbiddenException" 2267// You don't have permissions to perform this action. 2268// 2269// * ErrCodeInternalServerErrorException "InternalServerErrorException" 2270// The request processing has failed because of an unknown error, exception, 2271// or failure. 2272// 2273// * ErrCodeNotFoundException "NotFoundException" 2274// The specified resource doesn't exist. Check your request syntax and try again. 2275// 2276// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 2277// The request has failed due to a temporary failure of the service. 2278// 2279// * ErrCodeTooManyRequestsException "TooManyRequestsException" 2280// The maximum request rate permitted by the App Mesh APIs has been exceeded 2281// for your account. For best results, use an increasing or variable sleep interval 2282// between requests. 2283// 2284// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualRouters 2285func (c *AppMesh) ListVirtualRouters(input *ListVirtualRoutersInput) (*ListVirtualRoutersOutput, error) { 2286 req, out := c.ListVirtualRoutersRequest(input) 2287 return out, req.Send() 2288} 2289 2290// ListVirtualRoutersWithContext is the same as ListVirtualRouters with the addition of 2291// the ability to pass a context and additional request options. 2292// 2293// See ListVirtualRouters for details on how to use this API operation. 2294// 2295// The context must be non-nil and will be used for request cancellation. If 2296// the context is nil a panic will occur. In the future the SDK may create 2297// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2298// for more information on using Contexts. 2299func (c *AppMesh) ListVirtualRoutersWithContext(ctx aws.Context, input *ListVirtualRoutersInput, opts ...request.Option) (*ListVirtualRoutersOutput, error) { 2300 req, out := c.ListVirtualRoutersRequest(input) 2301 req.SetContext(ctx) 2302 req.ApplyOptions(opts...) 2303 return out, req.Send() 2304} 2305 2306// ListVirtualRoutersPages iterates over the pages of a ListVirtualRouters operation, 2307// calling the "fn" function with the response data for each page. To stop 2308// iterating, return false from the fn function. 2309// 2310// See ListVirtualRouters method for more information on how to use this operation. 2311// 2312// Note: This operation can generate multiple requests to a service. 2313// 2314// // Example iterating over at most 3 pages of a ListVirtualRouters operation. 2315// pageNum := 0 2316// err := client.ListVirtualRoutersPages(params, 2317// func(page *appmesh.ListVirtualRoutersOutput, lastPage bool) bool { 2318// pageNum++ 2319// fmt.Println(page) 2320// return pageNum <= 3 2321// }) 2322// 2323func (c *AppMesh) ListVirtualRoutersPages(input *ListVirtualRoutersInput, fn func(*ListVirtualRoutersOutput, bool) bool) error { 2324 return c.ListVirtualRoutersPagesWithContext(aws.BackgroundContext(), input, fn) 2325} 2326 2327// ListVirtualRoutersPagesWithContext same as ListVirtualRoutersPages except 2328// it takes a Context and allows setting request options on the pages. 2329// 2330// The context must be non-nil and will be used for request cancellation. If 2331// the context is nil a panic will occur. In the future the SDK may create 2332// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2333// for more information on using Contexts. 2334func (c *AppMesh) ListVirtualRoutersPagesWithContext(ctx aws.Context, input *ListVirtualRoutersInput, fn func(*ListVirtualRoutersOutput, bool) bool, opts ...request.Option) error { 2335 p := request.Pagination{ 2336 NewRequest: func() (*request.Request, error) { 2337 var inCpy *ListVirtualRoutersInput 2338 if input != nil { 2339 tmp := *input 2340 inCpy = &tmp 2341 } 2342 req, _ := c.ListVirtualRoutersRequest(inCpy) 2343 req.SetContext(ctx) 2344 req.ApplyOptions(opts...) 2345 return req, nil 2346 }, 2347 } 2348 2349 cont := true 2350 for p.Next() && cont { 2351 cont = fn(p.Page().(*ListVirtualRoutersOutput), !p.HasNextPage()) 2352 } 2353 return p.Err() 2354} 2355 2356const opListVirtualServices = "ListVirtualServices" 2357 2358// ListVirtualServicesRequest generates a "aws/request.Request" representing the 2359// client's request for the ListVirtualServices operation. The "output" return 2360// value will be populated with the request's response once the request completes 2361// successfully. 2362// 2363// Use "Send" method on the returned Request to send the API call to the service. 2364// the "output" return value is not valid until after Send returns without error. 2365// 2366// See ListVirtualServices for more information on using the ListVirtualServices 2367// API call, and error handling. 2368// 2369// This method is useful when you want to inject custom logic or configuration 2370// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2371// 2372// 2373// // Example sending a request using the ListVirtualServicesRequest method. 2374// req, resp := client.ListVirtualServicesRequest(params) 2375// 2376// err := req.Send() 2377// if err == nil { // resp is now filled 2378// fmt.Println(resp) 2379// } 2380// 2381// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualServices 2382func (c *AppMesh) ListVirtualServicesRequest(input *ListVirtualServicesInput) (req *request.Request, output *ListVirtualServicesOutput) { 2383 op := &request.Operation{ 2384 Name: opListVirtualServices, 2385 HTTPMethod: "GET", 2386 HTTPPath: "/v20190125/meshes/{meshName}/virtualServices", 2387 Paginator: &request.Paginator{ 2388 InputTokens: []string{"nextToken"}, 2389 OutputTokens: []string{"nextToken"}, 2390 LimitToken: "limit", 2391 TruncationToken: "", 2392 }, 2393 } 2394 2395 if input == nil { 2396 input = &ListVirtualServicesInput{} 2397 } 2398 2399 output = &ListVirtualServicesOutput{} 2400 req = c.newRequest(op, input, output) 2401 return 2402} 2403 2404// ListVirtualServices API operation for AWS App Mesh. 2405// 2406// Returns a list of existing virtual services in a service mesh. 2407// 2408// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2409// with awserr.Error's Code and Message methods to get detailed information about 2410// the error. 2411// 2412// See the AWS API reference guide for AWS App Mesh's 2413// API operation ListVirtualServices for usage and error information. 2414// 2415// Returned Error Codes: 2416// * ErrCodeBadRequestException "BadRequestException" 2417// The request syntax was malformed. Check your request syntax and try again. 2418// 2419// * ErrCodeForbiddenException "ForbiddenException" 2420// You don't have permissions to perform this action. 2421// 2422// * ErrCodeInternalServerErrorException "InternalServerErrorException" 2423// The request processing has failed because of an unknown error, exception, 2424// or failure. 2425// 2426// * ErrCodeNotFoundException "NotFoundException" 2427// The specified resource doesn't exist. Check your request syntax and try again. 2428// 2429// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 2430// The request has failed due to a temporary failure of the service. 2431// 2432// * ErrCodeTooManyRequestsException "TooManyRequestsException" 2433// The maximum request rate permitted by the App Mesh APIs has been exceeded 2434// for your account. For best results, use an increasing or variable sleep interval 2435// between requests. 2436// 2437// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualServices 2438func (c *AppMesh) ListVirtualServices(input *ListVirtualServicesInput) (*ListVirtualServicesOutput, error) { 2439 req, out := c.ListVirtualServicesRequest(input) 2440 return out, req.Send() 2441} 2442 2443// ListVirtualServicesWithContext is the same as ListVirtualServices with the addition of 2444// the ability to pass a context and additional request options. 2445// 2446// See ListVirtualServices for details on how to use this API operation. 2447// 2448// The context must be non-nil and will be used for request cancellation. If 2449// the context is nil a panic will occur. In the future the SDK may create 2450// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2451// for more information on using Contexts. 2452func (c *AppMesh) ListVirtualServicesWithContext(ctx aws.Context, input *ListVirtualServicesInput, opts ...request.Option) (*ListVirtualServicesOutput, error) { 2453 req, out := c.ListVirtualServicesRequest(input) 2454 req.SetContext(ctx) 2455 req.ApplyOptions(opts...) 2456 return out, req.Send() 2457} 2458 2459// ListVirtualServicesPages iterates over the pages of a ListVirtualServices operation, 2460// calling the "fn" function with the response data for each page. To stop 2461// iterating, return false from the fn function. 2462// 2463// See ListVirtualServices method for more information on how to use this operation. 2464// 2465// Note: This operation can generate multiple requests to a service. 2466// 2467// // Example iterating over at most 3 pages of a ListVirtualServices operation. 2468// pageNum := 0 2469// err := client.ListVirtualServicesPages(params, 2470// func(page *appmesh.ListVirtualServicesOutput, lastPage bool) bool { 2471// pageNum++ 2472// fmt.Println(page) 2473// return pageNum <= 3 2474// }) 2475// 2476func (c *AppMesh) ListVirtualServicesPages(input *ListVirtualServicesInput, fn func(*ListVirtualServicesOutput, bool) bool) error { 2477 return c.ListVirtualServicesPagesWithContext(aws.BackgroundContext(), input, fn) 2478} 2479 2480// ListVirtualServicesPagesWithContext same as ListVirtualServicesPages except 2481// it takes a Context and allows setting request options on the pages. 2482// 2483// The context must be non-nil and will be used for request cancellation. If 2484// the context is nil a panic will occur. In the future the SDK may create 2485// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2486// for more information on using Contexts. 2487func (c *AppMesh) ListVirtualServicesPagesWithContext(ctx aws.Context, input *ListVirtualServicesInput, fn func(*ListVirtualServicesOutput, bool) bool, opts ...request.Option) error { 2488 p := request.Pagination{ 2489 NewRequest: func() (*request.Request, error) { 2490 var inCpy *ListVirtualServicesInput 2491 if input != nil { 2492 tmp := *input 2493 inCpy = &tmp 2494 } 2495 req, _ := c.ListVirtualServicesRequest(inCpy) 2496 req.SetContext(ctx) 2497 req.ApplyOptions(opts...) 2498 return req, nil 2499 }, 2500 } 2501 2502 cont := true 2503 for p.Next() && cont { 2504 cont = fn(p.Page().(*ListVirtualServicesOutput), !p.HasNextPage()) 2505 } 2506 return p.Err() 2507} 2508 2509const opTagResource = "TagResource" 2510 2511// TagResourceRequest generates a "aws/request.Request" representing the 2512// client's request for the TagResource operation. The "output" return 2513// value will be populated with the request's response once the request completes 2514// successfully. 2515// 2516// Use "Send" method on the returned Request to send the API call to the service. 2517// the "output" return value is not valid until after Send returns without error. 2518// 2519// See TagResource for more information on using the TagResource 2520// API call, and error handling. 2521// 2522// This method is useful when you want to inject custom logic or configuration 2523// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2524// 2525// 2526// // Example sending a request using the TagResourceRequest method. 2527// req, resp := client.TagResourceRequest(params) 2528// 2529// err := req.Send() 2530// if err == nil { // resp is now filled 2531// fmt.Println(resp) 2532// } 2533// 2534// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TagResource 2535func (c *AppMesh) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { 2536 op := &request.Operation{ 2537 Name: opTagResource, 2538 HTTPMethod: "PUT", 2539 HTTPPath: "/v20190125/tag", 2540 } 2541 2542 if input == nil { 2543 input = &TagResourceInput{} 2544 } 2545 2546 output = &TagResourceOutput{} 2547 req = c.newRequest(op, input, output) 2548 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 2549 return 2550} 2551 2552// TagResource API operation for AWS App Mesh. 2553// 2554// Associates the specified tags to a resource with the specified resourceArn. 2555// If existing tags on a resource aren't specified in the request parameters, 2556// they aren't changed. When a resource is deleted, the tags associated with 2557// that resource are also deleted. 2558// 2559// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2560// with awserr.Error's Code and Message methods to get detailed information about 2561// the error. 2562// 2563// See the AWS API reference guide for AWS App Mesh's 2564// API operation TagResource for usage and error information. 2565// 2566// Returned Error Codes: 2567// * ErrCodeBadRequestException "BadRequestException" 2568// The request syntax was malformed. Check your request syntax and try again. 2569// 2570// * ErrCodeForbiddenException "ForbiddenException" 2571// You don't have permissions to perform this action. 2572// 2573// * ErrCodeInternalServerErrorException "InternalServerErrorException" 2574// The request processing has failed because of an unknown error, exception, 2575// or failure. 2576// 2577// * ErrCodeNotFoundException "NotFoundException" 2578// The specified resource doesn't exist. Check your request syntax and try again. 2579// 2580// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 2581// The request has failed due to a temporary failure of the service. 2582// 2583// * ErrCodeTooManyRequestsException "TooManyRequestsException" 2584// The maximum request rate permitted by the App Mesh APIs has been exceeded 2585// for your account. For best results, use an increasing or variable sleep interval 2586// between requests. 2587// 2588// * ErrCodeTooManyTagsException "TooManyTagsException" 2589// The request exceeds the maximum allowed number of tags allowed per resource. 2590// The current limit is 50 user tags per resource. You must reduce the number 2591// of tags in the request. None of the tags in this request were applied. 2592// 2593// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TagResource 2594func (c *AppMesh) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { 2595 req, out := c.TagResourceRequest(input) 2596 return out, req.Send() 2597} 2598 2599// TagResourceWithContext is the same as TagResource with the addition of 2600// the ability to pass a context and additional request options. 2601// 2602// See TagResource for details on how to use this API operation. 2603// 2604// The context must be non-nil and will be used for request cancellation. If 2605// the context is nil a panic will occur. In the future the SDK may create 2606// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2607// for more information on using Contexts. 2608func (c *AppMesh) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { 2609 req, out := c.TagResourceRequest(input) 2610 req.SetContext(ctx) 2611 req.ApplyOptions(opts...) 2612 return out, req.Send() 2613} 2614 2615const opUntagResource = "UntagResource" 2616 2617// UntagResourceRequest generates a "aws/request.Request" representing the 2618// client's request for the UntagResource operation. The "output" return 2619// value will be populated with the request's response once the request completes 2620// successfully. 2621// 2622// Use "Send" method on the returned Request to send the API call to the service. 2623// the "output" return value is not valid until after Send returns without error. 2624// 2625// See UntagResource for more information on using the UntagResource 2626// API call, and error handling. 2627// 2628// This method is useful when you want to inject custom logic or configuration 2629// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2630// 2631// 2632// // Example sending a request using the UntagResourceRequest method. 2633// req, resp := client.UntagResourceRequest(params) 2634// 2635// err := req.Send() 2636// if err == nil { // resp is now filled 2637// fmt.Println(resp) 2638// } 2639// 2640// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UntagResource 2641func (c *AppMesh) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { 2642 op := &request.Operation{ 2643 Name: opUntagResource, 2644 HTTPMethod: "PUT", 2645 HTTPPath: "/v20190125/untag", 2646 } 2647 2648 if input == nil { 2649 input = &UntagResourceInput{} 2650 } 2651 2652 output = &UntagResourceOutput{} 2653 req = c.newRequest(op, input, output) 2654 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 2655 return 2656} 2657 2658// UntagResource API operation for AWS App Mesh. 2659// 2660// Deletes specified tags from a resource. 2661// 2662// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2663// with awserr.Error's Code and Message methods to get detailed information about 2664// the error. 2665// 2666// See the AWS API reference guide for AWS App Mesh's 2667// API operation UntagResource for usage and error information. 2668// 2669// Returned Error Codes: 2670// * ErrCodeBadRequestException "BadRequestException" 2671// The request syntax was malformed. Check your request syntax and try again. 2672// 2673// * ErrCodeForbiddenException "ForbiddenException" 2674// You don't have permissions to perform this action. 2675// 2676// * ErrCodeInternalServerErrorException "InternalServerErrorException" 2677// The request processing has failed because of an unknown error, exception, 2678// or failure. 2679// 2680// * ErrCodeNotFoundException "NotFoundException" 2681// The specified resource doesn't exist. Check your request syntax and try again. 2682// 2683// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 2684// The request has failed due to a temporary failure of the service. 2685// 2686// * ErrCodeTooManyRequestsException "TooManyRequestsException" 2687// The maximum request rate permitted by the App Mesh APIs has been exceeded 2688// for your account. For best results, use an increasing or variable sleep interval 2689// between requests. 2690// 2691// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UntagResource 2692func (c *AppMesh) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { 2693 req, out := c.UntagResourceRequest(input) 2694 return out, req.Send() 2695} 2696 2697// UntagResourceWithContext is the same as UntagResource with the addition of 2698// the ability to pass a context and additional request options. 2699// 2700// See UntagResource for details on how to use this API operation. 2701// 2702// The context must be non-nil and will be used for request cancellation. If 2703// the context is nil a panic will occur. In the future the SDK may create 2704// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2705// for more information on using Contexts. 2706func (c *AppMesh) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { 2707 req, out := c.UntagResourceRequest(input) 2708 req.SetContext(ctx) 2709 req.ApplyOptions(opts...) 2710 return out, req.Send() 2711} 2712 2713const opUpdateMesh = "UpdateMesh" 2714 2715// UpdateMeshRequest generates a "aws/request.Request" representing the 2716// client's request for the UpdateMesh operation. The "output" return 2717// value will be populated with the request's response once the request completes 2718// successfully. 2719// 2720// Use "Send" method on the returned Request to send the API call to the service. 2721// the "output" return value is not valid until after Send returns without error. 2722// 2723// See UpdateMesh for more information on using the UpdateMesh 2724// API call, and error handling. 2725// 2726// This method is useful when you want to inject custom logic or configuration 2727// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2728// 2729// 2730// // Example sending a request using the UpdateMeshRequest method. 2731// req, resp := client.UpdateMeshRequest(params) 2732// 2733// err := req.Send() 2734// if err == nil { // resp is now filled 2735// fmt.Println(resp) 2736// } 2737// 2738// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateMesh 2739func (c *AppMesh) UpdateMeshRequest(input *UpdateMeshInput) (req *request.Request, output *UpdateMeshOutput) { 2740 op := &request.Operation{ 2741 Name: opUpdateMesh, 2742 HTTPMethod: "PUT", 2743 HTTPPath: "/v20190125/meshes/{meshName}", 2744 } 2745 2746 if input == nil { 2747 input = &UpdateMeshInput{} 2748 } 2749 2750 output = &UpdateMeshOutput{} 2751 req = c.newRequest(op, input, output) 2752 return 2753} 2754 2755// UpdateMesh API operation for AWS App Mesh. 2756// 2757// Updates an existing service mesh. 2758// 2759// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2760// with awserr.Error's Code and Message methods to get detailed information about 2761// the error. 2762// 2763// See the AWS API reference guide for AWS App Mesh's 2764// API operation UpdateMesh for usage and error information. 2765// 2766// Returned Error Codes: 2767// * ErrCodeBadRequestException "BadRequestException" 2768// The request syntax was malformed. Check your request syntax and try again. 2769// 2770// * ErrCodeConflictException "ConflictException" 2771// The request contains a client token that was used for a previous update resource 2772// call with different specifications. Try the request again with a new client 2773// token. 2774// 2775// * ErrCodeForbiddenException "ForbiddenException" 2776// You don't have permissions to perform this action. 2777// 2778// * ErrCodeInternalServerErrorException "InternalServerErrorException" 2779// The request processing has failed because of an unknown error, exception, 2780// or failure. 2781// 2782// * ErrCodeNotFoundException "NotFoundException" 2783// The specified resource doesn't exist. Check your request syntax and try again. 2784// 2785// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 2786// The request has failed due to a temporary failure of the service. 2787// 2788// * ErrCodeTooManyRequestsException "TooManyRequestsException" 2789// The maximum request rate permitted by the App Mesh APIs has been exceeded 2790// for your account. For best results, use an increasing or variable sleep interval 2791// between requests. 2792// 2793// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateMesh 2794func (c *AppMesh) UpdateMesh(input *UpdateMeshInput) (*UpdateMeshOutput, error) { 2795 req, out := c.UpdateMeshRequest(input) 2796 return out, req.Send() 2797} 2798 2799// UpdateMeshWithContext is the same as UpdateMesh with the addition of 2800// the ability to pass a context and additional request options. 2801// 2802// See UpdateMesh for details on how to use this API operation. 2803// 2804// The context must be non-nil and will be used for request cancellation. If 2805// the context is nil a panic will occur. In the future the SDK may create 2806// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2807// for more information on using Contexts. 2808func (c *AppMesh) UpdateMeshWithContext(ctx aws.Context, input *UpdateMeshInput, opts ...request.Option) (*UpdateMeshOutput, error) { 2809 req, out := c.UpdateMeshRequest(input) 2810 req.SetContext(ctx) 2811 req.ApplyOptions(opts...) 2812 return out, req.Send() 2813} 2814 2815const opUpdateRoute = "UpdateRoute" 2816 2817// UpdateRouteRequest generates a "aws/request.Request" representing the 2818// client's request for the UpdateRoute operation. The "output" return 2819// value will be populated with the request's response once the request completes 2820// successfully. 2821// 2822// Use "Send" method on the returned Request to send the API call to the service. 2823// the "output" return value is not valid until after Send returns without error. 2824// 2825// See UpdateRoute for more information on using the UpdateRoute 2826// API call, and error handling. 2827// 2828// This method is useful when you want to inject custom logic or configuration 2829// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2830// 2831// 2832// // Example sending a request using the UpdateRouteRequest method. 2833// req, resp := client.UpdateRouteRequest(params) 2834// 2835// err := req.Send() 2836// if err == nil { // resp is now filled 2837// fmt.Println(resp) 2838// } 2839// 2840// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateRoute 2841func (c *AppMesh) UpdateRouteRequest(input *UpdateRouteInput) (req *request.Request, output *UpdateRouteOutput) { 2842 op := &request.Operation{ 2843 Name: opUpdateRoute, 2844 HTTPMethod: "PUT", 2845 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes/{routeName}", 2846 } 2847 2848 if input == nil { 2849 input = &UpdateRouteInput{} 2850 } 2851 2852 output = &UpdateRouteOutput{} 2853 req = c.newRequest(op, input, output) 2854 return 2855} 2856 2857// UpdateRoute API operation for AWS App Mesh. 2858// 2859// Updates an existing route for a specified service mesh and virtual router. 2860// 2861// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2862// with awserr.Error's Code and Message methods to get detailed information about 2863// the error. 2864// 2865// See the AWS API reference guide for AWS App Mesh's 2866// API operation UpdateRoute for usage and error information. 2867// 2868// Returned Error Codes: 2869// * ErrCodeBadRequestException "BadRequestException" 2870// The request syntax was malformed. Check your request syntax and try again. 2871// 2872// * ErrCodeConflictException "ConflictException" 2873// The request contains a client token that was used for a previous update resource 2874// call with different specifications. Try the request again with a new client 2875// token. 2876// 2877// * ErrCodeForbiddenException "ForbiddenException" 2878// You don't have permissions to perform this action. 2879// 2880// * ErrCodeInternalServerErrorException "InternalServerErrorException" 2881// The request processing has failed because of an unknown error, exception, 2882// or failure. 2883// 2884// * ErrCodeLimitExceededException "LimitExceededException" 2885// You have exceeded a service limit for your account. For more information, 2886// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service_limits.html) 2887// in the AWS App Mesh User Guide. 2888// 2889// * ErrCodeNotFoundException "NotFoundException" 2890// The specified resource doesn't exist. Check your request syntax and try again. 2891// 2892// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 2893// The request has failed due to a temporary failure of the service. 2894// 2895// * ErrCodeTooManyRequestsException "TooManyRequestsException" 2896// The maximum request rate permitted by the App Mesh APIs has been exceeded 2897// for your account. For best results, use an increasing or variable sleep interval 2898// between requests. 2899// 2900// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateRoute 2901func (c *AppMesh) UpdateRoute(input *UpdateRouteInput) (*UpdateRouteOutput, error) { 2902 req, out := c.UpdateRouteRequest(input) 2903 return out, req.Send() 2904} 2905 2906// UpdateRouteWithContext is the same as UpdateRoute with the addition of 2907// the ability to pass a context and additional request options. 2908// 2909// See UpdateRoute for details on how to use this API operation. 2910// 2911// The context must be non-nil and will be used for request cancellation. If 2912// the context is nil a panic will occur. In the future the SDK may create 2913// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2914// for more information on using Contexts. 2915func (c *AppMesh) UpdateRouteWithContext(ctx aws.Context, input *UpdateRouteInput, opts ...request.Option) (*UpdateRouteOutput, error) { 2916 req, out := c.UpdateRouteRequest(input) 2917 req.SetContext(ctx) 2918 req.ApplyOptions(opts...) 2919 return out, req.Send() 2920} 2921 2922const opUpdateVirtualNode = "UpdateVirtualNode" 2923 2924// UpdateVirtualNodeRequest generates a "aws/request.Request" representing the 2925// client's request for the UpdateVirtualNode operation. The "output" return 2926// value will be populated with the request's response once the request completes 2927// successfully. 2928// 2929// Use "Send" method on the returned Request to send the API call to the service. 2930// the "output" return value is not valid until after Send returns without error. 2931// 2932// See UpdateVirtualNode for more information on using the UpdateVirtualNode 2933// API call, and error handling. 2934// 2935// This method is useful when you want to inject custom logic or configuration 2936// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2937// 2938// 2939// // Example sending a request using the UpdateVirtualNodeRequest method. 2940// req, resp := client.UpdateVirtualNodeRequest(params) 2941// 2942// err := req.Send() 2943// if err == nil { // resp is now filled 2944// fmt.Println(resp) 2945// } 2946// 2947// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualNode 2948func (c *AppMesh) UpdateVirtualNodeRequest(input *UpdateVirtualNodeInput) (req *request.Request, output *UpdateVirtualNodeOutput) { 2949 op := &request.Operation{ 2950 Name: opUpdateVirtualNode, 2951 HTTPMethod: "PUT", 2952 HTTPPath: "/v20190125/meshes/{meshName}/virtualNodes/{virtualNodeName}", 2953 } 2954 2955 if input == nil { 2956 input = &UpdateVirtualNodeInput{} 2957 } 2958 2959 output = &UpdateVirtualNodeOutput{} 2960 req = c.newRequest(op, input, output) 2961 return 2962} 2963 2964// UpdateVirtualNode API operation for AWS App Mesh. 2965// 2966// Updates an existing virtual node in a specified service mesh. 2967// 2968// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2969// with awserr.Error's Code and Message methods to get detailed information about 2970// the error. 2971// 2972// See the AWS API reference guide for AWS App Mesh's 2973// API operation UpdateVirtualNode for usage and error information. 2974// 2975// Returned Error Codes: 2976// * ErrCodeBadRequestException "BadRequestException" 2977// The request syntax was malformed. Check your request syntax and try again. 2978// 2979// * ErrCodeConflictException "ConflictException" 2980// The request contains a client token that was used for a previous update resource 2981// call with different specifications. Try the request again with a new client 2982// token. 2983// 2984// * ErrCodeForbiddenException "ForbiddenException" 2985// You don't have permissions to perform this action. 2986// 2987// * ErrCodeInternalServerErrorException "InternalServerErrorException" 2988// The request processing has failed because of an unknown error, exception, 2989// or failure. 2990// 2991// * ErrCodeLimitExceededException "LimitExceededException" 2992// You have exceeded a service limit for your account. For more information, 2993// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service_limits.html) 2994// in the AWS App Mesh User Guide. 2995// 2996// * ErrCodeNotFoundException "NotFoundException" 2997// The specified resource doesn't exist. Check your request syntax and try again. 2998// 2999// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 3000// The request has failed due to a temporary failure of the service. 3001// 3002// * ErrCodeTooManyRequestsException "TooManyRequestsException" 3003// The maximum request rate permitted by the App Mesh APIs has been exceeded 3004// for your account. For best results, use an increasing or variable sleep interval 3005// between requests. 3006// 3007// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualNode 3008func (c *AppMesh) UpdateVirtualNode(input *UpdateVirtualNodeInput) (*UpdateVirtualNodeOutput, error) { 3009 req, out := c.UpdateVirtualNodeRequest(input) 3010 return out, req.Send() 3011} 3012 3013// UpdateVirtualNodeWithContext is the same as UpdateVirtualNode with the addition of 3014// the ability to pass a context and additional request options. 3015// 3016// See UpdateVirtualNode for details on how to use this API operation. 3017// 3018// The context must be non-nil and will be used for request cancellation. If 3019// the context is nil a panic will occur. In the future the SDK may create 3020// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3021// for more information on using Contexts. 3022func (c *AppMesh) UpdateVirtualNodeWithContext(ctx aws.Context, input *UpdateVirtualNodeInput, opts ...request.Option) (*UpdateVirtualNodeOutput, error) { 3023 req, out := c.UpdateVirtualNodeRequest(input) 3024 req.SetContext(ctx) 3025 req.ApplyOptions(opts...) 3026 return out, req.Send() 3027} 3028 3029const opUpdateVirtualRouter = "UpdateVirtualRouter" 3030 3031// UpdateVirtualRouterRequest generates a "aws/request.Request" representing the 3032// client's request for the UpdateVirtualRouter operation. The "output" return 3033// value will be populated with the request's response once the request completes 3034// successfully. 3035// 3036// Use "Send" method on the returned Request to send the API call to the service. 3037// the "output" return value is not valid until after Send returns without error. 3038// 3039// See UpdateVirtualRouter for more information on using the UpdateVirtualRouter 3040// API call, and error handling. 3041// 3042// This method is useful when you want to inject custom logic or configuration 3043// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3044// 3045// 3046// // Example sending a request using the UpdateVirtualRouterRequest method. 3047// req, resp := client.UpdateVirtualRouterRequest(params) 3048// 3049// err := req.Send() 3050// if err == nil { // resp is now filled 3051// fmt.Println(resp) 3052// } 3053// 3054// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualRouter 3055func (c *AppMesh) UpdateVirtualRouterRequest(input *UpdateVirtualRouterInput) (req *request.Request, output *UpdateVirtualRouterOutput) { 3056 op := &request.Operation{ 3057 Name: opUpdateVirtualRouter, 3058 HTTPMethod: "PUT", 3059 HTTPPath: "/v20190125/meshes/{meshName}/virtualRouters/{virtualRouterName}", 3060 } 3061 3062 if input == nil { 3063 input = &UpdateVirtualRouterInput{} 3064 } 3065 3066 output = &UpdateVirtualRouterOutput{} 3067 req = c.newRequest(op, input, output) 3068 return 3069} 3070 3071// UpdateVirtualRouter API operation for AWS App Mesh. 3072// 3073// Updates an existing virtual router in a specified service mesh. 3074// 3075// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3076// with awserr.Error's Code and Message methods to get detailed information about 3077// the error. 3078// 3079// See the AWS API reference guide for AWS App Mesh's 3080// API operation UpdateVirtualRouter for usage and error information. 3081// 3082// Returned Error Codes: 3083// * ErrCodeBadRequestException "BadRequestException" 3084// The request syntax was malformed. Check your request syntax and try again. 3085// 3086// * ErrCodeConflictException "ConflictException" 3087// The request contains a client token that was used for a previous update resource 3088// call with different specifications. Try the request again with a new client 3089// token. 3090// 3091// * ErrCodeForbiddenException "ForbiddenException" 3092// You don't have permissions to perform this action. 3093// 3094// * ErrCodeInternalServerErrorException "InternalServerErrorException" 3095// The request processing has failed because of an unknown error, exception, 3096// or failure. 3097// 3098// * ErrCodeLimitExceededException "LimitExceededException" 3099// You have exceeded a service limit for your account. For more information, 3100// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service_limits.html) 3101// in the AWS App Mesh User Guide. 3102// 3103// * ErrCodeNotFoundException "NotFoundException" 3104// The specified resource doesn't exist. Check your request syntax and try again. 3105// 3106// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 3107// The request has failed due to a temporary failure of the service. 3108// 3109// * ErrCodeTooManyRequestsException "TooManyRequestsException" 3110// The maximum request rate permitted by the App Mesh APIs has been exceeded 3111// for your account. For best results, use an increasing or variable sleep interval 3112// between requests. 3113// 3114// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualRouter 3115func (c *AppMesh) UpdateVirtualRouter(input *UpdateVirtualRouterInput) (*UpdateVirtualRouterOutput, error) { 3116 req, out := c.UpdateVirtualRouterRequest(input) 3117 return out, req.Send() 3118} 3119 3120// UpdateVirtualRouterWithContext is the same as UpdateVirtualRouter with the addition of 3121// the ability to pass a context and additional request options. 3122// 3123// See UpdateVirtualRouter for details on how to use this API operation. 3124// 3125// The context must be non-nil and will be used for request cancellation. If 3126// the context is nil a panic will occur. In the future the SDK may create 3127// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3128// for more information on using Contexts. 3129func (c *AppMesh) UpdateVirtualRouterWithContext(ctx aws.Context, input *UpdateVirtualRouterInput, opts ...request.Option) (*UpdateVirtualRouterOutput, error) { 3130 req, out := c.UpdateVirtualRouterRequest(input) 3131 req.SetContext(ctx) 3132 req.ApplyOptions(opts...) 3133 return out, req.Send() 3134} 3135 3136const opUpdateVirtualService = "UpdateVirtualService" 3137 3138// UpdateVirtualServiceRequest generates a "aws/request.Request" representing the 3139// client's request for the UpdateVirtualService operation. The "output" return 3140// value will be populated with the request's response once the request completes 3141// successfully. 3142// 3143// Use "Send" method on the returned Request to send the API call to the service. 3144// the "output" return value is not valid until after Send returns without error. 3145// 3146// See UpdateVirtualService for more information on using the UpdateVirtualService 3147// API call, and error handling. 3148// 3149// This method is useful when you want to inject custom logic or configuration 3150// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3151// 3152// 3153// // Example sending a request using the UpdateVirtualServiceRequest method. 3154// req, resp := client.UpdateVirtualServiceRequest(params) 3155// 3156// err := req.Send() 3157// if err == nil { // resp is now filled 3158// fmt.Println(resp) 3159// } 3160// 3161// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualService 3162func (c *AppMesh) UpdateVirtualServiceRequest(input *UpdateVirtualServiceInput) (req *request.Request, output *UpdateVirtualServiceOutput) { 3163 op := &request.Operation{ 3164 Name: opUpdateVirtualService, 3165 HTTPMethod: "PUT", 3166 HTTPPath: "/v20190125/meshes/{meshName}/virtualServices/{virtualServiceName}", 3167 } 3168 3169 if input == nil { 3170 input = &UpdateVirtualServiceInput{} 3171 } 3172 3173 output = &UpdateVirtualServiceOutput{} 3174 req = c.newRequest(op, input, output) 3175 return 3176} 3177 3178// UpdateVirtualService API operation for AWS App Mesh. 3179// 3180// Updates an existing virtual service in a specified service mesh. 3181// 3182// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3183// with awserr.Error's Code and Message methods to get detailed information about 3184// the error. 3185// 3186// See the AWS API reference guide for AWS App Mesh's 3187// API operation UpdateVirtualService for usage and error information. 3188// 3189// Returned Error Codes: 3190// * ErrCodeBadRequestException "BadRequestException" 3191// The request syntax was malformed. Check your request syntax and try again. 3192// 3193// * ErrCodeConflictException "ConflictException" 3194// The request contains a client token that was used for a previous update resource 3195// call with different specifications. Try the request again with a new client 3196// token. 3197// 3198// * ErrCodeForbiddenException "ForbiddenException" 3199// You don't have permissions to perform this action. 3200// 3201// * ErrCodeInternalServerErrorException "InternalServerErrorException" 3202// The request processing has failed because of an unknown error, exception, 3203// or failure. 3204// 3205// * ErrCodeLimitExceededException "LimitExceededException" 3206// You have exceeded a service limit for your account. For more information, 3207// see Service Limits (https://docs.aws.amazon.com/app-mesh/latest/userguide/service_limits.html) 3208// in the AWS App Mesh User Guide. 3209// 3210// * ErrCodeNotFoundException "NotFoundException" 3211// The specified resource doesn't exist. Check your request syntax and try again. 3212// 3213// * ErrCodeServiceUnavailableException "ServiceUnavailableException" 3214// The request has failed due to a temporary failure of the service. 3215// 3216// * ErrCodeTooManyRequestsException "TooManyRequestsException" 3217// The maximum request rate permitted by the App Mesh APIs has been exceeded 3218// for your account. For best results, use an increasing or variable sleep interval 3219// between requests. 3220// 3221// See also, https://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualService 3222func (c *AppMesh) UpdateVirtualService(input *UpdateVirtualServiceInput) (*UpdateVirtualServiceOutput, error) { 3223 req, out := c.UpdateVirtualServiceRequest(input) 3224 return out, req.Send() 3225} 3226 3227// UpdateVirtualServiceWithContext is the same as UpdateVirtualService with the addition of 3228// the ability to pass a context and additional request options. 3229// 3230// See UpdateVirtualService for details on how to use this API operation. 3231// 3232// The context must be non-nil and will be used for request cancellation. If 3233// the context is nil a panic will occur. In the future the SDK may create 3234// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3235// for more information on using Contexts. 3236func (c *AppMesh) UpdateVirtualServiceWithContext(ctx aws.Context, input *UpdateVirtualServiceInput, opts ...request.Option) (*UpdateVirtualServiceOutput, error) { 3237 req, out := c.UpdateVirtualServiceRequest(input) 3238 req.SetContext(ctx) 3239 req.ApplyOptions(opts...) 3240 return out, req.Send() 3241} 3242 3243// An object representing the access logging information for a virtual node. 3244type AccessLog struct { 3245 _ struct{} `type:"structure"` 3246 3247 // An object representing an access log file. 3248 File *FileAccessLog `locationName:"file" type:"structure"` 3249} 3250 3251// String returns the string representation 3252func (s AccessLog) String() string { 3253 return awsutil.Prettify(s) 3254} 3255 3256// GoString returns the string representation 3257func (s AccessLog) GoString() string { 3258 return s.String() 3259} 3260 3261// Validate inspects the fields of the type to determine if they are valid. 3262func (s *AccessLog) Validate() error { 3263 invalidParams := request.ErrInvalidParams{Context: "AccessLog"} 3264 if s.File != nil { 3265 if err := s.File.Validate(); err != nil { 3266 invalidParams.AddNested("File", err.(request.ErrInvalidParams)) 3267 } 3268 } 3269 3270 if invalidParams.Len() > 0 { 3271 return invalidParams 3272 } 3273 return nil 3274} 3275 3276// SetFile sets the File field's value. 3277func (s *AccessLog) SetFile(v *FileAccessLog) *AccessLog { 3278 s.File = v 3279 return s 3280} 3281 3282// An object representing the AWS Cloud Map attribute information for your virtual 3283// node. 3284type AwsCloudMapInstanceAttribute struct { 3285 _ struct{} `type:"structure"` 3286 3287 // Key is a required field 3288 Key *string `locationName:"key" min:"1" type:"string" required:"true"` 3289 3290 // Value is a required field 3291 Value *string `locationName:"value" min:"1" type:"string" required:"true"` 3292} 3293 3294// String returns the string representation 3295func (s AwsCloudMapInstanceAttribute) String() string { 3296 return awsutil.Prettify(s) 3297} 3298 3299// GoString returns the string representation 3300func (s AwsCloudMapInstanceAttribute) GoString() string { 3301 return s.String() 3302} 3303 3304// Validate inspects the fields of the type to determine if they are valid. 3305func (s *AwsCloudMapInstanceAttribute) Validate() error { 3306 invalidParams := request.ErrInvalidParams{Context: "AwsCloudMapInstanceAttribute"} 3307 if s.Key == nil { 3308 invalidParams.Add(request.NewErrParamRequired("Key")) 3309 } 3310 if s.Key != nil && len(*s.Key) < 1 { 3311 invalidParams.Add(request.NewErrParamMinLen("Key", 1)) 3312 } 3313 if s.Value == nil { 3314 invalidParams.Add(request.NewErrParamRequired("Value")) 3315 } 3316 if s.Value != nil && len(*s.Value) < 1 { 3317 invalidParams.Add(request.NewErrParamMinLen("Value", 1)) 3318 } 3319 3320 if invalidParams.Len() > 0 { 3321 return invalidParams 3322 } 3323 return nil 3324} 3325 3326// SetKey sets the Key field's value. 3327func (s *AwsCloudMapInstanceAttribute) SetKey(v string) *AwsCloudMapInstanceAttribute { 3328 s.Key = &v 3329 return s 3330} 3331 3332// SetValue sets the Value field's value. 3333func (s *AwsCloudMapInstanceAttribute) SetValue(v string) *AwsCloudMapInstanceAttribute { 3334 s.Value = &v 3335 return s 3336} 3337 3338// An object representing the AWS Cloud Map service discovery information for 3339// your virtual node. 3340type AwsCloudMapServiceDiscovery struct { 3341 _ struct{} `type:"structure"` 3342 3343 Attributes []*AwsCloudMapInstanceAttribute `locationName:"attributes" type:"list"` 3344 3345 // NamespaceName is a required field 3346 NamespaceName *string `locationName:"namespaceName" min:"1" type:"string" required:"true"` 3347 3348 // ServiceName is a required field 3349 ServiceName *string `locationName:"serviceName" min:"1" type:"string" required:"true"` 3350} 3351 3352// String returns the string representation 3353func (s AwsCloudMapServiceDiscovery) String() string { 3354 return awsutil.Prettify(s) 3355} 3356 3357// GoString returns the string representation 3358func (s AwsCloudMapServiceDiscovery) GoString() string { 3359 return s.String() 3360} 3361 3362// Validate inspects the fields of the type to determine if they are valid. 3363func (s *AwsCloudMapServiceDiscovery) Validate() error { 3364 invalidParams := request.ErrInvalidParams{Context: "AwsCloudMapServiceDiscovery"} 3365 if s.NamespaceName == nil { 3366 invalidParams.Add(request.NewErrParamRequired("NamespaceName")) 3367 } 3368 if s.NamespaceName != nil && len(*s.NamespaceName) < 1 { 3369 invalidParams.Add(request.NewErrParamMinLen("NamespaceName", 1)) 3370 } 3371 if s.ServiceName == nil { 3372 invalidParams.Add(request.NewErrParamRequired("ServiceName")) 3373 } 3374 if s.ServiceName != nil && len(*s.ServiceName) < 1 { 3375 invalidParams.Add(request.NewErrParamMinLen("ServiceName", 1)) 3376 } 3377 if s.Attributes != nil { 3378 for i, v := range s.Attributes { 3379 if v == nil { 3380 continue 3381 } 3382 if err := v.Validate(); err != nil { 3383 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) 3384 } 3385 } 3386 } 3387 3388 if invalidParams.Len() > 0 { 3389 return invalidParams 3390 } 3391 return nil 3392} 3393 3394// SetAttributes sets the Attributes field's value. 3395func (s *AwsCloudMapServiceDiscovery) SetAttributes(v []*AwsCloudMapInstanceAttribute) *AwsCloudMapServiceDiscovery { 3396 s.Attributes = v 3397 return s 3398} 3399 3400// SetNamespaceName sets the NamespaceName field's value. 3401func (s *AwsCloudMapServiceDiscovery) SetNamespaceName(v string) *AwsCloudMapServiceDiscovery { 3402 s.NamespaceName = &v 3403 return s 3404} 3405 3406// SetServiceName sets the ServiceName field's value. 3407func (s *AwsCloudMapServiceDiscovery) SetServiceName(v string) *AwsCloudMapServiceDiscovery { 3408 s.ServiceName = &v 3409 return s 3410} 3411 3412// An object representing the backends that a virtual node is expected to send 3413// outbound traffic to. 3414type Backend struct { 3415 _ struct{} `type:"structure"` 3416 3417 // An object representing a virtual service backend for a virtual node. 3418 VirtualService *VirtualServiceBackend `locationName:"virtualService" type:"structure"` 3419} 3420 3421// String returns the string representation 3422func (s Backend) String() string { 3423 return awsutil.Prettify(s) 3424} 3425 3426// GoString returns the string representation 3427func (s Backend) GoString() string { 3428 return s.String() 3429} 3430 3431// Validate inspects the fields of the type to determine if they are valid. 3432func (s *Backend) Validate() error { 3433 invalidParams := request.ErrInvalidParams{Context: "Backend"} 3434 if s.VirtualService != nil { 3435 if err := s.VirtualService.Validate(); err != nil { 3436 invalidParams.AddNested("VirtualService", err.(request.ErrInvalidParams)) 3437 } 3438 } 3439 3440 if invalidParams.Len() > 0 { 3441 return invalidParams 3442 } 3443 return nil 3444} 3445 3446// SetVirtualService sets the VirtualService field's value. 3447func (s *Backend) SetVirtualService(v *VirtualServiceBackend) *Backend { 3448 s.VirtualService = v 3449 return s 3450} 3451 3452type CreateMeshInput struct { 3453 _ struct{} `type:"structure"` 3454 3455 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 3456 3457 // MeshName is a required field 3458 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 3459 3460 // An object representing the specification of a service mesh. 3461 Spec *MeshSpec `locationName:"spec" type:"structure"` 3462 3463 Tags []*TagRef `locationName:"tags" type:"list"` 3464} 3465 3466// String returns the string representation 3467func (s CreateMeshInput) String() string { 3468 return awsutil.Prettify(s) 3469} 3470 3471// GoString returns the string representation 3472func (s CreateMeshInput) GoString() string { 3473 return s.String() 3474} 3475 3476// Validate inspects the fields of the type to determine if they are valid. 3477func (s *CreateMeshInput) Validate() error { 3478 invalidParams := request.ErrInvalidParams{Context: "CreateMeshInput"} 3479 if s.MeshName == nil { 3480 invalidParams.Add(request.NewErrParamRequired("MeshName")) 3481 } 3482 if s.MeshName != nil && len(*s.MeshName) < 1 { 3483 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 3484 } 3485 if s.Spec != nil { 3486 if err := s.Spec.Validate(); err != nil { 3487 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 3488 } 3489 } 3490 if s.Tags != nil { 3491 for i, v := range s.Tags { 3492 if v == nil { 3493 continue 3494 } 3495 if err := v.Validate(); err != nil { 3496 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 3497 } 3498 } 3499 } 3500 3501 if invalidParams.Len() > 0 { 3502 return invalidParams 3503 } 3504 return nil 3505} 3506 3507// SetClientToken sets the ClientToken field's value. 3508func (s *CreateMeshInput) SetClientToken(v string) *CreateMeshInput { 3509 s.ClientToken = &v 3510 return s 3511} 3512 3513// SetMeshName sets the MeshName field's value. 3514func (s *CreateMeshInput) SetMeshName(v string) *CreateMeshInput { 3515 s.MeshName = &v 3516 return s 3517} 3518 3519// SetSpec sets the Spec field's value. 3520func (s *CreateMeshInput) SetSpec(v *MeshSpec) *CreateMeshInput { 3521 s.Spec = v 3522 return s 3523} 3524 3525// SetTags sets the Tags field's value. 3526func (s *CreateMeshInput) SetTags(v []*TagRef) *CreateMeshInput { 3527 s.Tags = v 3528 return s 3529} 3530 3531type CreateMeshOutput struct { 3532 _ struct{} `type:"structure" payload:"Mesh"` 3533 3534 // An object representing a service mesh returned by a describe operation. 3535 // 3536 // Mesh is a required field 3537 Mesh *MeshData `locationName:"mesh" type:"structure" required:"true"` 3538} 3539 3540// String returns the string representation 3541func (s CreateMeshOutput) String() string { 3542 return awsutil.Prettify(s) 3543} 3544 3545// GoString returns the string representation 3546func (s CreateMeshOutput) GoString() string { 3547 return s.String() 3548} 3549 3550// SetMesh sets the Mesh field's value. 3551func (s *CreateMeshOutput) SetMesh(v *MeshData) *CreateMeshOutput { 3552 s.Mesh = v 3553 return s 3554} 3555 3556type CreateRouteInput struct { 3557 _ struct{} `type:"structure"` 3558 3559 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 3560 3561 // MeshName is a required field 3562 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 3563 3564 // RouteName is a required field 3565 RouteName *string `locationName:"routeName" min:"1" type:"string" required:"true"` 3566 3567 // An object representing the specification of a route. 3568 // 3569 // Spec is a required field 3570 Spec *RouteSpec `locationName:"spec" type:"structure" required:"true"` 3571 3572 Tags []*TagRef `locationName:"tags" type:"list"` 3573 3574 // VirtualRouterName is a required field 3575 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 3576} 3577 3578// String returns the string representation 3579func (s CreateRouteInput) String() string { 3580 return awsutil.Prettify(s) 3581} 3582 3583// GoString returns the string representation 3584func (s CreateRouteInput) GoString() string { 3585 return s.String() 3586} 3587 3588// Validate inspects the fields of the type to determine if they are valid. 3589func (s *CreateRouteInput) Validate() error { 3590 invalidParams := request.ErrInvalidParams{Context: "CreateRouteInput"} 3591 if s.MeshName == nil { 3592 invalidParams.Add(request.NewErrParamRequired("MeshName")) 3593 } 3594 if s.MeshName != nil && len(*s.MeshName) < 1 { 3595 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 3596 } 3597 if s.RouteName == nil { 3598 invalidParams.Add(request.NewErrParamRequired("RouteName")) 3599 } 3600 if s.RouteName != nil && len(*s.RouteName) < 1 { 3601 invalidParams.Add(request.NewErrParamMinLen("RouteName", 1)) 3602 } 3603 if s.Spec == nil { 3604 invalidParams.Add(request.NewErrParamRequired("Spec")) 3605 } 3606 if s.VirtualRouterName == nil { 3607 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 3608 } 3609 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 3610 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 3611 } 3612 if s.Spec != nil { 3613 if err := s.Spec.Validate(); err != nil { 3614 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 3615 } 3616 } 3617 if s.Tags != nil { 3618 for i, v := range s.Tags { 3619 if v == nil { 3620 continue 3621 } 3622 if err := v.Validate(); err != nil { 3623 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 3624 } 3625 } 3626 } 3627 3628 if invalidParams.Len() > 0 { 3629 return invalidParams 3630 } 3631 return nil 3632} 3633 3634// SetClientToken sets the ClientToken field's value. 3635func (s *CreateRouteInput) SetClientToken(v string) *CreateRouteInput { 3636 s.ClientToken = &v 3637 return s 3638} 3639 3640// SetMeshName sets the MeshName field's value. 3641func (s *CreateRouteInput) SetMeshName(v string) *CreateRouteInput { 3642 s.MeshName = &v 3643 return s 3644} 3645 3646// SetRouteName sets the RouteName field's value. 3647func (s *CreateRouteInput) SetRouteName(v string) *CreateRouteInput { 3648 s.RouteName = &v 3649 return s 3650} 3651 3652// SetSpec sets the Spec field's value. 3653func (s *CreateRouteInput) SetSpec(v *RouteSpec) *CreateRouteInput { 3654 s.Spec = v 3655 return s 3656} 3657 3658// SetTags sets the Tags field's value. 3659func (s *CreateRouteInput) SetTags(v []*TagRef) *CreateRouteInput { 3660 s.Tags = v 3661 return s 3662} 3663 3664// SetVirtualRouterName sets the VirtualRouterName field's value. 3665func (s *CreateRouteInput) SetVirtualRouterName(v string) *CreateRouteInput { 3666 s.VirtualRouterName = &v 3667 return s 3668} 3669 3670type CreateRouteOutput struct { 3671 _ struct{} `type:"structure" payload:"Route"` 3672 3673 // An object representing a route returned by a describe operation. 3674 // 3675 // Route is a required field 3676 Route *RouteData `locationName:"route" type:"structure" required:"true"` 3677} 3678 3679// String returns the string representation 3680func (s CreateRouteOutput) String() string { 3681 return awsutil.Prettify(s) 3682} 3683 3684// GoString returns the string representation 3685func (s CreateRouteOutput) GoString() string { 3686 return s.String() 3687} 3688 3689// SetRoute sets the Route field's value. 3690func (s *CreateRouteOutput) SetRoute(v *RouteData) *CreateRouteOutput { 3691 s.Route = v 3692 return s 3693} 3694 3695type CreateVirtualNodeInput struct { 3696 _ struct{} `type:"structure"` 3697 3698 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 3699 3700 // MeshName is a required field 3701 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 3702 3703 // An object representing the specification of a virtual node. 3704 // 3705 // Spec is a required field 3706 Spec *VirtualNodeSpec `locationName:"spec" type:"structure" required:"true"` 3707 3708 Tags []*TagRef `locationName:"tags" type:"list"` 3709 3710 // VirtualNodeName is a required field 3711 VirtualNodeName *string `locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 3712} 3713 3714// String returns the string representation 3715func (s CreateVirtualNodeInput) String() string { 3716 return awsutil.Prettify(s) 3717} 3718 3719// GoString returns the string representation 3720func (s CreateVirtualNodeInput) GoString() string { 3721 return s.String() 3722} 3723 3724// Validate inspects the fields of the type to determine if they are valid. 3725func (s *CreateVirtualNodeInput) Validate() error { 3726 invalidParams := request.ErrInvalidParams{Context: "CreateVirtualNodeInput"} 3727 if s.MeshName == nil { 3728 invalidParams.Add(request.NewErrParamRequired("MeshName")) 3729 } 3730 if s.MeshName != nil && len(*s.MeshName) < 1 { 3731 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 3732 } 3733 if s.Spec == nil { 3734 invalidParams.Add(request.NewErrParamRequired("Spec")) 3735 } 3736 if s.VirtualNodeName == nil { 3737 invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) 3738 } 3739 if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { 3740 invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) 3741 } 3742 if s.Spec != nil { 3743 if err := s.Spec.Validate(); err != nil { 3744 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 3745 } 3746 } 3747 if s.Tags != nil { 3748 for i, v := range s.Tags { 3749 if v == nil { 3750 continue 3751 } 3752 if err := v.Validate(); err != nil { 3753 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 3754 } 3755 } 3756 } 3757 3758 if invalidParams.Len() > 0 { 3759 return invalidParams 3760 } 3761 return nil 3762} 3763 3764// SetClientToken sets the ClientToken field's value. 3765func (s *CreateVirtualNodeInput) SetClientToken(v string) *CreateVirtualNodeInput { 3766 s.ClientToken = &v 3767 return s 3768} 3769 3770// SetMeshName sets the MeshName field's value. 3771func (s *CreateVirtualNodeInput) SetMeshName(v string) *CreateVirtualNodeInput { 3772 s.MeshName = &v 3773 return s 3774} 3775 3776// SetSpec sets the Spec field's value. 3777func (s *CreateVirtualNodeInput) SetSpec(v *VirtualNodeSpec) *CreateVirtualNodeInput { 3778 s.Spec = v 3779 return s 3780} 3781 3782// SetTags sets the Tags field's value. 3783func (s *CreateVirtualNodeInput) SetTags(v []*TagRef) *CreateVirtualNodeInput { 3784 s.Tags = v 3785 return s 3786} 3787 3788// SetVirtualNodeName sets the VirtualNodeName field's value. 3789func (s *CreateVirtualNodeInput) SetVirtualNodeName(v string) *CreateVirtualNodeInput { 3790 s.VirtualNodeName = &v 3791 return s 3792} 3793 3794type CreateVirtualNodeOutput struct { 3795 _ struct{} `type:"structure" payload:"VirtualNode"` 3796 3797 // An object representing a virtual node returned by a describe operation. 3798 // 3799 // VirtualNode is a required field 3800 VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` 3801} 3802 3803// String returns the string representation 3804func (s CreateVirtualNodeOutput) String() string { 3805 return awsutil.Prettify(s) 3806} 3807 3808// GoString returns the string representation 3809func (s CreateVirtualNodeOutput) GoString() string { 3810 return s.String() 3811} 3812 3813// SetVirtualNode sets the VirtualNode field's value. 3814func (s *CreateVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *CreateVirtualNodeOutput { 3815 s.VirtualNode = v 3816 return s 3817} 3818 3819type CreateVirtualRouterInput struct { 3820 _ struct{} `type:"structure"` 3821 3822 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 3823 3824 // MeshName is a required field 3825 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 3826 3827 // An object representing the specification of a virtual router. 3828 // 3829 // Spec is a required field 3830 Spec *VirtualRouterSpec `locationName:"spec" type:"structure" required:"true"` 3831 3832 Tags []*TagRef `locationName:"tags" type:"list"` 3833 3834 // VirtualRouterName is a required field 3835 VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 3836} 3837 3838// String returns the string representation 3839func (s CreateVirtualRouterInput) String() string { 3840 return awsutil.Prettify(s) 3841} 3842 3843// GoString returns the string representation 3844func (s CreateVirtualRouterInput) GoString() string { 3845 return s.String() 3846} 3847 3848// Validate inspects the fields of the type to determine if they are valid. 3849func (s *CreateVirtualRouterInput) Validate() error { 3850 invalidParams := request.ErrInvalidParams{Context: "CreateVirtualRouterInput"} 3851 if s.MeshName == nil { 3852 invalidParams.Add(request.NewErrParamRequired("MeshName")) 3853 } 3854 if s.MeshName != nil && len(*s.MeshName) < 1 { 3855 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 3856 } 3857 if s.Spec == nil { 3858 invalidParams.Add(request.NewErrParamRequired("Spec")) 3859 } 3860 if s.VirtualRouterName == nil { 3861 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 3862 } 3863 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 3864 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 3865 } 3866 if s.Spec != nil { 3867 if err := s.Spec.Validate(); err != nil { 3868 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 3869 } 3870 } 3871 if s.Tags != nil { 3872 for i, v := range s.Tags { 3873 if v == nil { 3874 continue 3875 } 3876 if err := v.Validate(); err != nil { 3877 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 3878 } 3879 } 3880 } 3881 3882 if invalidParams.Len() > 0 { 3883 return invalidParams 3884 } 3885 return nil 3886} 3887 3888// SetClientToken sets the ClientToken field's value. 3889func (s *CreateVirtualRouterInput) SetClientToken(v string) *CreateVirtualRouterInput { 3890 s.ClientToken = &v 3891 return s 3892} 3893 3894// SetMeshName sets the MeshName field's value. 3895func (s *CreateVirtualRouterInput) SetMeshName(v string) *CreateVirtualRouterInput { 3896 s.MeshName = &v 3897 return s 3898} 3899 3900// SetSpec sets the Spec field's value. 3901func (s *CreateVirtualRouterInput) SetSpec(v *VirtualRouterSpec) *CreateVirtualRouterInput { 3902 s.Spec = v 3903 return s 3904} 3905 3906// SetTags sets the Tags field's value. 3907func (s *CreateVirtualRouterInput) SetTags(v []*TagRef) *CreateVirtualRouterInput { 3908 s.Tags = v 3909 return s 3910} 3911 3912// SetVirtualRouterName sets the VirtualRouterName field's value. 3913func (s *CreateVirtualRouterInput) SetVirtualRouterName(v string) *CreateVirtualRouterInput { 3914 s.VirtualRouterName = &v 3915 return s 3916} 3917 3918type CreateVirtualRouterOutput struct { 3919 _ struct{} `type:"structure" payload:"VirtualRouter"` 3920 3921 // An object representing a virtual router returned by a describe operation. 3922 // 3923 // VirtualRouter is a required field 3924 VirtualRouter *VirtualRouterData `locationName:"virtualRouter" type:"structure" required:"true"` 3925} 3926 3927// String returns the string representation 3928func (s CreateVirtualRouterOutput) String() string { 3929 return awsutil.Prettify(s) 3930} 3931 3932// GoString returns the string representation 3933func (s CreateVirtualRouterOutput) GoString() string { 3934 return s.String() 3935} 3936 3937// SetVirtualRouter sets the VirtualRouter field's value. 3938func (s *CreateVirtualRouterOutput) SetVirtualRouter(v *VirtualRouterData) *CreateVirtualRouterOutput { 3939 s.VirtualRouter = v 3940 return s 3941} 3942 3943type CreateVirtualServiceInput struct { 3944 _ struct{} `type:"structure"` 3945 3946 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 3947 3948 // MeshName is a required field 3949 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 3950 3951 // An object representing the specification of a virtual service. 3952 // 3953 // Spec is a required field 3954 Spec *VirtualServiceSpec `locationName:"spec" type:"structure" required:"true"` 3955 3956 Tags []*TagRef `locationName:"tags" type:"list"` 3957 3958 // VirtualServiceName is a required field 3959 VirtualServiceName *string `locationName:"virtualServiceName" type:"string" required:"true"` 3960} 3961 3962// String returns the string representation 3963func (s CreateVirtualServiceInput) String() string { 3964 return awsutil.Prettify(s) 3965} 3966 3967// GoString returns the string representation 3968func (s CreateVirtualServiceInput) GoString() string { 3969 return s.String() 3970} 3971 3972// Validate inspects the fields of the type to determine if they are valid. 3973func (s *CreateVirtualServiceInput) Validate() error { 3974 invalidParams := request.ErrInvalidParams{Context: "CreateVirtualServiceInput"} 3975 if s.MeshName == nil { 3976 invalidParams.Add(request.NewErrParamRequired("MeshName")) 3977 } 3978 if s.MeshName != nil && len(*s.MeshName) < 1 { 3979 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 3980 } 3981 if s.Spec == nil { 3982 invalidParams.Add(request.NewErrParamRequired("Spec")) 3983 } 3984 if s.VirtualServiceName == nil { 3985 invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) 3986 } 3987 if s.Spec != nil { 3988 if err := s.Spec.Validate(); err != nil { 3989 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 3990 } 3991 } 3992 if s.Tags != nil { 3993 for i, v := range s.Tags { 3994 if v == nil { 3995 continue 3996 } 3997 if err := v.Validate(); err != nil { 3998 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 3999 } 4000 } 4001 } 4002 4003 if invalidParams.Len() > 0 { 4004 return invalidParams 4005 } 4006 return nil 4007} 4008 4009// SetClientToken sets the ClientToken field's value. 4010func (s *CreateVirtualServiceInput) SetClientToken(v string) *CreateVirtualServiceInput { 4011 s.ClientToken = &v 4012 return s 4013} 4014 4015// SetMeshName sets the MeshName field's value. 4016func (s *CreateVirtualServiceInput) SetMeshName(v string) *CreateVirtualServiceInput { 4017 s.MeshName = &v 4018 return s 4019} 4020 4021// SetSpec sets the Spec field's value. 4022func (s *CreateVirtualServiceInput) SetSpec(v *VirtualServiceSpec) *CreateVirtualServiceInput { 4023 s.Spec = v 4024 return s 4025} 4026 4027// SetTags sets the Tags field's value. 4028func (s *CreateVirtualServiceInput) SetTags(v []*TagRef) *CreateVirtualServiceInput { 4029 s.Tags = v 4030 return s 4031} 4032 4033// SetVirtualServiceName sets the VirtualServiceName field's value. 4034func (s *CreateVirtualServiceInput) SetVirtualServiceName(v string) *CreateVirtualServiceInput { 4035 s.VirtualServiceName = &v 4036 return s 4037} 4038 4039type CreateVirtualServiceOutput struct { 4040 _ struct{} `type:"structure" payload:"VirtualService"` 4041 4042 // An object representing a virtual service returned by a describe operation. 4043 // 4044 // VirtualService is a required field 4045 VirtualService *VirtualServiceData `locationName:"virtualService" type:"structure" required:"true"` 4046} 4047 4048// String returns the string representation 4049func (s CreateVirtualServiceOutput) String() string { 4050 return awsutil.Prettify(s) 4051} 4052 4053// GoString returns the string representation 4054func (s CreateVirtualServiceOutput) GoString() string { 4055 return s.String() 4056} 4057 4058// SetVirtualService sets the VirtualService field's value. 4059func (s *CreateVirtualServiceOutput) SetVirtualService(v *VirtualServiceData) *CreateVirtualServiceOutput { 4060 s.VirtualService = v 4061 return s 4062} 4063 4064type DeleteMeshInput struct { 4065 _ struct{} `type:"structure"` 4066 4067 // MeshName is a required field 4068 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4069} 4070 4071// String returns the string representation 4072func (s DeleteMeshInput) String() string { 4073 return awsutil.Prettify(s) 4074} 4075 4076// GoString returns the string representation 4077func (s DeleteMeshInput) GoString() string { 4078 return s.String() 4079} 4080 4081// Validate inspects the fields of the type to determine if they are valid. 4082func (s *DeleteMeshInput) Validate() error { 4083 invalidParams := request.ErrInvalidParams{Context: "DeleteMeshInput"} 4084 if s.MeshName == nil { 4085 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4086 } 4087 if s.MeshName != nil && len(*s.MeshName) < 1 { 4088 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4089 } 4090 4091 if invalidParams.Len() > 0 { 4092 return invalidParams 4093 } 4094 return nil 4095} 4096 4097// SetMeshName sets the MeshName field's value. 4098func (s *DeleteMeshInput) SetMeshName(v string) *DeleteMeshInput { 4099 s.MeshName = &v 4100 return s 4101} 4102 4103type DeleteMeshOutput struct { 4104 _ struct{} `type:"structure" payload:"Mesh"` 4105 4106 // An object representing a service mesh returned by a describe operation. 4107 // 4108 // Mesh is a required field 4109 Mesh *MeshData `locationName:"mesh" type:"structure" required:"true"` 4110} 4111 4112// String returns the string representation 4113func (s DeleteMeshOutput) String() string { 4114 return awsutil.Prettify(s) 4115} 4116 4117// GoString returns the string representation 4118func (s DeleteMeshOutput) GoString() string { 4119 return s.String() 4120} 4121 4122// SetMesh sets the Mesh field's value. 4123func (s *DeleteMeshOutput) SetMesh(v *MeshData) *DeleteMeshOutput { 4124 s.Mesh = v 4125 return s 4126} 4127 4128type DeleteRouteInput struct { 4129 _ struct{} `type:"structure"` 4130 4131 // MeshName is a required field 4132 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4133 4134 // RouteName is a required field 4135 RouteName *string `location:"uri" locationName:"routeName" min:"1" type:"string" required:"true"` 4136 4137 // VirtualRouterName is a required field 4138 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 4139} 4140 4141// String returns the string representation 4142func (s DeleteRouteInput) String() string { 4143 return awsutil.Prettify(s) 4144} 4145 4146// GoString returns the string representation 4147func (s DeleteRouteInput) GoString() string { 4148 return s.String() 4149} 4150 4151// Validate inspects the fields of the type to determine if they are valid. 4152func (s *DeleteRouteInput) Validate() error { 4153 invalidParams := request.ErrInvalidParams{Context: "DeleteRouteInput"} 4154 if s.MeshName == nil { 4155 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4156 } 4157 if s.MeshName != nil && len(*s.MeshName) < 1 { 4158 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4159 } 4160 if s.RouteName == nil { 4161 invalidParams.Add(request.NewErrParamRequired("RouteName")) 4162 } 4163 if s.RouteName != nil && len(*s.RouteName) < 1 { 4164 invalidParams.Add(request.NewErrParamMinLen("RouteName", 1)) 4165 } 4166 if s.VirtualRouterName == nil { 4167 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 4168 } 4169 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 4170 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 4171 } 4172 4173 if invalidParams.Len() > 0 { 4174 return invalidParams 4175 } 4176 return nil 4177} 4178 4179// SetMeshName sets the MeshName field's value. 4180func (s *DeleteRouteInput) SetMeshName(v string) *DeleteRouteInput { 4181 s.MeshName = &v 4182 return s 4183} 4184 4185// SetRouteName sets the RouteName field's value. 4186func (s *DeleteRouteInput) SetRouteName(v string) *DeleteRouteInput { 4187 s.RouteName = &v 4188 return s 4189} 4190 4191// SetVirtualRouterName sets the VirtualRouterName field's value. 4192func (s *DeleteRouteInput) SetVirtualRouterName(v string) *DeleteRouteInput { 4193 s.VirtualRouterName = &v 4194 return s 4195} 4196 4197type DeleteRouteOutput struct { 4198 _ struct{} `type:"structure" payload:"Route"` 4199 4200 // An object representing a route returned by a describe operation. 4201 // 4202 // Route is a required field 4203 Route *RouteData `locationName:"route" type:"structure" required:"true"` 4204} 4205 4206// String returns the string representation 4207func (s DeleteRouteOutput) String() string { 4208 return awsutil.Prettify(s) 4209} 4210 4211// GoString returns the string representation 4212func (s DeleteRouteOutput) GoString() string { 4213 return s.String() 4214} 4215 4216// SetRoute sets the Route field's value. 4217func (s *DeleteRouteOutput) SetRoute(v *RouteData) *DeleteRouteOutput { 4218 s.Route = v 4219 return s 4220} 4221 4222type DeleteVirtualNodeInput struct { 4223 _ struct{} `type:"structure"` 4224 4225 // MeshName is a required field 4226 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4227 4228 // VirtualNodeName is a required field 4229 VirtualNodeName *string `location:"uri" locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 4230} 4231 4232// String returns the string representation 4233func (s DeleteVirtualNodeInput) String() string { 4234 return awsutil.Prettify(s) 4235} 4236 4237// GoString returns the string representation 4238func (s DeleteVirtualNodeInput) GoString() string { 4239 return s.String() 4240} 4241 4242// Validate inspects the fields of the type to determine if they are valid. 4243func (s *DeleteVirtualNodeInput) Validate() error { 4244 invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualNodeInput"} 4245 if s.MeshName == nil { 4246 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4247 } 4248 if s.MeshName != nil && len(*s.MeshName) < 1 { 4249 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4250 } 4251 if s.VirtualNodeName == nil { 4252 invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) 4253 } 4254 if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { 4255 invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) 4256 } 4257 4258 if invalidParams.Len() > 0 { 4259 return invalidParams 4260 } 4261 return nil 4262} 4263 4264// SetMeshName sets the MeshName field's value. 4265func (s *DeleteVirtualNodeInput) SetMeshName(v string) *DeleteVirtualNodeInput { 4266 s.MeshName = &v 4267 return s 4268} 4269 4270// SetVirtualNodeName sets the VirtualNodeName field's value. 4271func (s *DeleteVirtualNodeInput) SetVirtualNodeName(v string) *DeleteVirtualNodeInput { 4272 s.VirtualNodeName = &v 4273 return s 4274} 4275 4276type DeleteVirtualNodeOutput struct { 4277 _ struct{} `type:"structure" payload:"VirtualNode"` 4278 4279 // An object representing a virtual node returned by a describe operation. 4280 // 4281 // VirtualNode is a required field 4282 VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` 4283} 4284 4285// String returns the string representation 4286func (s DeleteVirtualNodeOutput) String() string { 4287 return awsutil.Prettify(s) 4288} 4289 4290// GoString returns the string representation 4291func (s DeleteVirtualNodeOutput) GoString() string { 4292 return s.String() 4293} 4294 4295// SetVirtualNode sets the VirtualNode field's value. 4296func (s *DeleteVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *DeleteVirtualNodeOutput { 4297 s.VirtualNode = v 4298 return s 4299} 4300 4301type DeleteVirtualRouterInput struct { 4302 _ struct{} `type:"structure"` 4303 4304 // MeshName is a required field 4305 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4306 4307 // VirtualRouterName is a required field 4308 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 4309} 4310 4311// String returns the string representation 4312func (s DeleteVirtualRouterInput) String() string { 4313 return awsutil.Prettify(s) 4314} 4315 4316// GoString returns the string representation 4317func (s DeleteVirtualRouterInput) GoString() string { 4318 return s.String() 4319} 4320 4321// Validate inspects the fields of the type to determine if they are valid. 4322func (s *DeleteVirtualRouterInput) Validate() error { 4323 invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualRouterInput"} 4324 if s.MeshName == nil { 4325 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4326 } 4327 if s.MeshName != nil && len(*s.MeshName) < 1 { 4328 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4329 } 4330 if s.VirtualRouterName == nil { 4331 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 4332 } 4333 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 4334 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 4335 } 4336 4337 if invalidParams.Len() > 0 { 4338 return invalidParams 4339 } 4340 return nil 4341} 4342 4343// SetMeshName sets the MeshName field's value. 4344func (s *DeleteVirtualRouterInput) SetMeshName(v string) *DeleteVirtualRouterInput { 4345 s.MeshName = &v 4346 return s 4347} 4348 4349// SetVirtualRouterName sets the VirtualRouterName field's value. 4350func (s *DeleteVirtualRouterInput) SetVirtualRouterName(v string) *DeleteVirtualRouterInput { 4351 s.VirtualRouterName = &v 4352 return s 4353} 4354 4355type DeleteVirtualRouterOutput struct { 4356 _ struct{} `type:"structure" payload:"VirtualRouter"` 4357 4358 // An object representing a virtual router returned by a describe operation. 4359 // 4360 // VirtualRouter is a required field 4361 VirtualRouter *VirtualRouterData `locationName:"virtualRouter" type:"structure" required:"true"` 4362} 4363 4364// String returns the string representation 4365func (s DeleteVirtualRouterOutput) String() string { 4366 return awsutil.Prettify(s) 4367} 4368 4369// GoString returns the string representation 4370func (s DeleteVirtualRouterOutput) GoString() string { 4371 return s.String() 4372} 4373 4374// SetVirtualRouter sets the VirtualRouter field's value. 4375func (s *DeleteVirtualRouterOutput) SetVirtualRouter(v *VirtualRouterData) *DeleteVirtualRouterOutput { 4376 s.VirtualRouter = v 4377 return s 4378} 4379 4380type DeleteVirtualServiceInput struct { 4381 _ struct{} `type:"structure"` 4382 4383 // MeshName is a required field 4384 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4385 4386 // VirtualServiceName is a required field 4387 VirtualServiceName *string `location:"uri" locationName:"virtualServiceName" type:"string" required:"true"` 4388} 4389 4390// String returns the string representation 4391func (s DeleteVirtualServiceInput) String() string { 4392 return awsutil.Prettify(s) 4393} 4394 4395// GoString returns the string representation 4396func (s DeleteVirtualServiceInput) GoString() string { 4397 return s.String() 4398} 4399 4400// Validate inspects the fields of the type to determine if they are valid. 4401func (s *DeleteVirtualServiceInput) Validate() error { 4402 invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualServiceInput"} 4403 if s.MeshName == nil { 4404 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4405 } 4406 if s.MeshName != nil && len(*s.MeshName) < 1 { 4407 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4408 } 4409 if s.VirtualServiceName == nil { 4410 invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) 4411 } 4412 if s.VirtualServiceName != nil && len(*s.VirtualServiceName) < 1 { 4413 invalidParams.Add(request.NewErrParamMinLen("VirtualServiceName", 1)) 4414 } 4415 4416 if invalidParams.Len() > 0 { 4417 return invalidParams 4418 } 4419 return nil 4420} 4421 4422// SetMeshName sets the MeshName field's value. 4423func (s *DeleteVirtualServiceInput) SetMeshName(v string) *DeleteVirtualServiceInput { 4424 s.MeshName = &v 4425 return s 4426} 4427 4428// SetVirtualServiceName sets the VirtualServiceName field's value. 4429func (s *DeleteVirtualServiceInput) SetVirtualServiceName(v string) *DeleteVirtualServiceInput { 4430 s.VirtualServiceName = &v 4431 return s 4432} 4433 4434type DeleteVirtualServiceOutput struct { 4435 _ struct{} `type:"structure" payload:"VirtualService"` 4436 4437 // An object representing a virtual service returned by a describe operation. 4438 // 4439 // VirtualService is a required field 4440 VirtualService *VirtualServiceData `locationName:"virtualService" type:"structure" required:"true"` 4441} 4442 4443// String returns the string representation 4444func (s DeleteVirtualServiceOutput) String() string { 4445 return awsutil.Prettify(s) 4446} 4447 4448// GoString returns the string representation 4449func (s DeleteVirtualServiceOutput) GoString() string { 4450 return s.String() 4451} 4452 4453// SetVirtualService sets the VirtualService field's value. 4454func (s *DeleteVirtualServiceOutput) SetVirtualService(v *VirtualServiceData) *DeleteVirtualServiceOutput { 4455 s.VirtualService = v 4456 return s 4457} 4458 4459type DescribeMeshInput struct { 4460 _ struct{} `type:"structure"` 4461 4462 // MeshName is a required field 4463 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4464} 4465 4466// String returns the string representation 4467func (s DescribeMeshInput) String() string { 4468 return awsutil.Prettify(s) 4469} 4470 4471// GoString returns the string representation 4472func (s DescribeMeshInput) GoString() string { 4473 return s.String() 4474} 4475 4476// Validate inspects the fields of the type to determine if they are valid. 4477func (s *DescribeMeshInput) Validate() error { 4478 invalidParams := request.ErrInvalidParams{Context: "DescribeMeshInput"} 4479 if s.MeshName == nil { 4480 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4481 } 4482 if s.MeshName != nil && len(*s.MeshName) < 1 { 4483 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4484 } 4485 4486 if invalidParams.Len() > 0 { 4487 return invalidParams 4488 } 4489 return nil 4490} 4491 4492// SetMeshName sets the MeshName field's value. 4493func (s *DescribeMeshInput) SetMeshName(v string) *DescribeMeshInput { 4494 s.MeshName = &v 4495 return s 4496} 4497 4498type DescribeMeshOutput struct { 4499 _ struct{} `type:"structure" payload:"Mesh"` 4500 4501 // An object representing a service mesh returned by a describe operation. 4502 // 4503 // Mesh is a required field 4504 Mesh *MeshData `locationName:"mesh" type:"structure" required:"true"` 4505} 4506 4507// String returns the string representation 4508func (s DescribeMeshOutput) String() string { 4509 return awsutil.Prettify(s) 4510} 4511 4512// GoString returns the string representation 4513func (s DescribeMeshOutput) GoString() string { 4514 return s.String() 4515} 4516 4517// SetMesh sets the Mesh field's value. 4518func (s *DescribeMeshOutput) SetMesh(v *MeshData) *DescribeMeshOutput { 4519 s.Mesh = v 4520 return s 4521} 4522 4523type DescribeRouteInput struct { 4524 _ struct{} `type:"structure"` 4525 4526 // MeshName is a required field 4527 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4528 4529 // RouteName is a required field 4530 RouteName *string `location:"uri" locationName:"routeName" min:"1" type:"string" required:"true"` 4531 4532 // VirtualRouterName is a required field 4533 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 4534} 4535 4536// String returns the string representation 4537func (s DescribeRouteInput) String() string { 4538 return awsutil.Prettify(s) 4539} 4540 4541// GoString returns the string representation 4542func (s DescribeRouteInput) GoString() string { 4543 return s.String() 4544} 4545 4546// Validate inspects the fields of the type to determine if they are valid. 4547func (s *DescribeRouteInput) Validate() error { 4548 invalidParams := request.ErrInvalidParams{Context: "DescribeRouteInput"} 4549 if s.MeshName == nil { 4550 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4551 } 4552 if s.MeshName != nil && len(*s.MeshName) < 1 { 4553 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4554 } 4555 if s.RouteName == nil { 4556 invalidParams.Add(request.NewErrParamRequired("RouteName")) 4557 } 4558 if s.RouteName != nil && len(*s.RouteName) < 1 { 4559 invalidParams.Add(request.NewErrParamMinLen("RouteName", 1)) 4560 } 4561 if s.VirtualRouterName == nil { 4562 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 4563 } 4564 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 4565 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 4566 } 4567 4568 if invalidParams.Len() > 0 { 4569 return invalidParams 4570 } 4571 return nil 4572} 4573 4574// SetMeshName sets the MeshName field's value. 4575func (s *DescribeRouteInput) SetMeshName(v string) *DescribeRouteInput { 4576 s.MeshName = &v 4577 return s 4578} 4579 4580// SetRouteName sets the RouteName field's value. 4581func (s *DescribeRouteInput) SetRouteName(v string) *DescribeRouteInput { 4582 s.RouteName = &v 4583 return s 4584} 4585 4586// SetVirtualRouterName sets the VirtualRouterName field's value. 4587func (s *DescribeRouteInput) SetVirtualRouterName(v string) *DescribeRouteInput { 4588 s.VirtualRouterName = &v 4589 return s 4590} 4591 4592type DescribeRouteOutput struct { 4593 _ struct{} `type:"structure" payload:"Route"` 4594 4595 // An object representing a route returned by a describe operation. 4596 // 4597 // Route is a required field 4598 Route *RouteData `locationName:"route" type:"structure" required:"true"` 4599} 4600 4601// String returns the string representation 4602func (s DescribeRouteOutput) String() string { 4603 return awsutil.Prettify(s) 4604} 4605 4606// GoString returns the string representation 4607func (s DescribeRouteOutput) GoString() string { 4608 return s.String() 4609} 4610 4611// SetRoute sets the Route field's value. 4612func (s *DescribeRouteOutput) SetRoute(v *RouteData) *DescribeRouteOutput { 4613 s.Route = v 4614 return s 4615} 4616 4617type DescribeVirtualNodeInput struct { 4618 _ struct{} `type:"structure"` 4619 4620 // MeshName is a required field 4621 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4622 4623 // VirtualNodeName is a required field 4624 VirtualNodeName *string `location:"uri" locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 4625} 4626 4627// String returns the string representation 4628func (s DescribeVirtualNodeInput) String() string { 4629 return awsutil.Prettify(s) 4630} 4631 4632// GoString returns the string representation 4633func (s DescribeVirtualNodeInput) GoString() string { 4634 return s.String() 4635} 4636 4637// Validate inspects the fields of the type to determine if they are valid. 4638func (s *DescribeVirtualNodeInput) Validate() error { 4639 invalidParams := request.ErrInvalidParams{Context: "DescribeVirtualNodeInput"} 4640 if s.MeshName == nil { 4641 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4642 } 4643 if s.MeshName != nil && len(*s.MeshName) < 1 { 4644 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4645 } 4646 if s.VirtualNodeName == nil { 4647 invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) 4648 } 4649 if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { 4650 invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) 4651 } 4652 4653 if invalidParams.Len() > 0 { 4654 return invalidParams 4655 } 4656 return nil 4657} 4658 4659// SetMeshName sets the MeshName field's value. 4660func (s *DescribeVirtualNodeInput) SetMeshName(v string) *DescribeVirtualNodeInput { 4661 s.MeshName = &v 4662 return s 4663} 4664 4665// SetVirtualNodeName sets the VirtualNodeName field's value. 4666func (s *DescribeVirtualNodeInput) SetVirtualNodeName(v string) *DescribeVirtualNodeInput { 4667 s.VirtualNodeName = &v 4668 return s 4669} 4670 4671type DescribeVirtualNodeOutput struct { 4672 _ struct{} `type:"structure" payload:"VirtualNode"` 4673 4674 // An object representing a virtual node returned by a describe operation. 4675 // 4676 // VirtualNode is a required field 4677 VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` 4678} 4679 4680// String returns the string representation 4681func (s DescribeVirtualNodeOutput) String() string { 4682 return awsutil.Prettify(s) 4683} 4684 4685// GoString returns the string representation 4686func (s DescribeVirtualNodeOutput) GoString() string { 4687 return s.String() 4688} 4689 4690// SetVirtualNode sets the VirtualNode field's value. 4691func (s *DescribeVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *DescribeVirtualNodeOutput { 4692 s.VirtualNode = v 4693 return s 4694} 4695 4696type DescribeVirtualRouterInput struct { 4697 _ struct{} `type:"structure"` 4698 4699 // MeshName is a required field 4700 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4701 4702 // VirtualRouterName is a required field 4703 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 4704} 4705 4706// String returns the string representation 4707func (s DescribeVirtualRouterInput) String() string { 4708 return awsutil.Prettify(s) 4709} 4710 4711// GoString returns the string representation 4712func (s DescribeVirtualRouterInput) GoString() string { 4713 return s.String() 4714} 4715 4716// Validate inspects the fields of the type to determine if they are valid. 4717func (s *DescribeVirtualRouterInput) Validate() error { 4718 invalidParams := request.ErrInvalidParams{Context: "DescribeVirtualRouterInput"} 4719 if s.MeshName == nil { 4720 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4721 } 4722 if s.MeshName != nil && len(*s.MeshName) < 1 { 4723 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4724 } 4725 if s.VirtualRouterName == nil { 4726 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 4727 } 4728 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 4729 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 4730 } 4731 4732 if invalidParams.Len() > 0 { 4733 return invalidParams 4734 } 4735 return nil 4736} 4737 4738// SetMeshName sets the MeshName field's value. 4739func (s *DescribeVirtualRouterInput) SetMeshName(v string) *DescribeVirtualRouterInput { 4740 s.MeshName = &v 4741 return s 4742} 4743 4744// SetVirtualRouterName sets the VirtualRouterName field's value. 4745func (s *DescribeVirtualRouterInput) SetVirtualRouterName(v string) *DescribeVirtualRouterInput { 4746 s.VirtualRouterName = &v 4747 return s 4748} 4749 4750type DescribeVirtualRouterOutput struct { 4751 _ struct{} `type:"structure" payload:"VirtualRouter"` 4752 4753 // An object representing a virtual router returned by a describe operation. 4754 // 4755 // VirtualRouter is a required field 4756 VirtualRouter *VirtualRouterData `locationName:"virtualRouter" type:"structure" required:"true"` 4757} 4758 4759// String returns the string representation 4760func (s DescribeVirtualRouterOutput) String() string { 4761 return awsutil.Prettify(s) 4762} 4763 4764// GoString returns the string representation 4765func (s DescribeVirtualRouterOutput) GoString() string { 4766 return s.String() 4767} 4768 4769// SetVirtualRouter sets the VirtualRouter field's value. 4770func (s *DescribeVirtualRouterOutput) SetVirtualRouter(v *VirtualRouterData) *DescribeVirtualRouterOutput { 4771 s.VirtualRouter = v 4772 return s 4773} 4774 4775type DescribeVirtualServiceInput struct { 4776 _ struct{} `type:"structure"` 4777 4778 // MeshName is a required field 4779 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 4780 4781 // VirtualServiceName is a required field 4782 VirtualServiceName *string `location:"uri" locationName:"virtualServiceName" type:"string" required:"true"` 4783} 4784 4785// String returns the string representation 4786func (s DescribeVirtualServiceInput) String() string { 4787 return awsutil.Prettify(s) 4788} 4789 4790// GoString returns the string representation 4791func (s DescribeVirtualServiceInput) GoString() string { 4792 return s.String() 4793} 4794 4795// Validate inspects the fields of the type to determine if they are valid. 4796func (s *DescribeVirtualServiceInput) Validate() error { 4797 invalidParams := request.ErrInvalidParams{Context: "DescribeVirtualServiceInput"} 4798 if s.MeshName == nil { 4799 invalidParams.Add(request.NewErrParamRequired("MeshName")) 4800 } 4801 if s.MeshName != nil && len(*s.MeshName) < 1 { 4802 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 4803 } 4804 if s.VirtualServiceName == nil { 4805 invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) 4806 } 4807 if s.VirtualServiceName != nil && len(*s.VirtualServiceName) < 1 { 4808 invalidParams.Add(request.NewErrParamMinLen("VirtualServiceName", 1)) 4809 } 4810 4811 if invalidParams.Len() > 0 { 4812 return invalidParams 4813 } 4814 return nil 4815} 4816 4817// SetMeshName sets the MeshName field's value. 4818func (s *DescribeVirtualServiceInput) SetMeshName(v string) *DescribeVirtualServiceInput { 4819 s.MeshName = &v 4820 return s 4821} 4822 4823// SetVirtualServiceName sets the VirtualServiceName field's value. 4824func (s *DescribeVirtualServiceInput) SetVirtualServiceName(v string) *DescribeVirtualServiceInput { 4825 s.VirtualServiceName = &v 4826 return s 4827} 4828 4829type DescribeVirtualServiceOutput struct { 4830 _ struct{} `type:"structure" payload:"VirtualService"` 4831 4832 // An object representing a virtual service returned by a describe operation. 4833 // 4834 // VirtualService is a required field 4835 VirtualService *VirtualServiceData `locationName:"virtualService" type:"structure" required:"true"` 4836} 4837 4838// String returns the string representation 4839func (s DescribeVirtualServiceOutput) String() string { 4840 return awsutil.Prettify(s) 4841} 4842 4843// GoString returns the string representation 4844func (s DescribeVirtualServiceOutput) GoString() string { 4845 return s.String() 4846} 4847 4848// SetVirtualService sets the VirtualService field's value. 4849func (s *DescribeVirtualServiceOutput) SetVirtualService(v *VirtualServiceData) *DescribeVirtualServiceOutput { 4850 s.VirtualService = v 4851 return s 4852} 4853 4854// An object representing the DNS service discovery information for your virtual 4855// node. 4856type DnsServiceDiscovery struct { 4857 _ struct{} `type:"structure"` 4858 4859 // Hostname is a required field 4860 Hostname *string `locationName:"hostname" type:"string" required:"true"` 4861} 4862 4863// String returns the string representation 4864func (s DnsServiceDiscovery) String() string { 4865 return awsutil.Prettify(s) 4866} 4867 4868// GoString returns the string representation 4869func (s DnsServiceDiscovery) GoString() string { 4870 return s.String() 4871} 4872 4873// Validate inspects the fields of the type to determine if they are valid. 4874func (s *DnsServiceDiscovery) Validate() error { 4875 invalidParams := request.ErrInvalidParams{Context: "DnsServiceDiscovery"} 4876 if s.Hostname == nil { 4877 invalidParams.Add(request.NewErrParamRequired("Hostname")) 4878 } 4879 4880 if invalidParams.Len() > 0 { 4881 return invalidParams 4882 } 4883 return nil 4884} 4885 4886// SetHostname sets the Hostname field's value. 4887func (s *DnsServiceDiscovery) SetHostname(v string) *DnsServiceDiscovery { 4888 s.Hostname = &v 4889 return s 4890} 4891 4892// An object representing the duration between retry attempts. 4893type Duration struct { 4894 _ struct{} `type:"structure"` 4895 4896 Unit *string `locationName:"unit" type:"string" enum:"DurationUnit"` 4897 4898 Value *int64 `locationName:"value" type:"long"` 4899} 4900 4901// String returns the string representation 4902func (s Duration) String() string { 4903 return awsutil.Prettify(s) 4904} 4905 4906// GoString returns the string representation 4907func (s Duration) GoString() string { 4908 return s.String() 4909} 4910 4911// SetUnit sets the Unit field's value. 4912func (s *Duration) SetUnit(v string) *Duration { 4913 s.Unit = &v 4914 return s 4915} 4916 4917// SetValue sets the Value field's value. 4918func (s *Duration) SetValue(v int64) *Duration { 4919 s.Value = &v 4920 return s 4921} 4922 4923// An object representing the egress filter rules for a service mesh. 4924type EgressFilter struct { 4925 _ struct{} `type:"structure"` 4926 4927 // Type is a required field 4928 Type *string `locationName:"type" type:"string" required:"true" enum:"EgressFilterType"` 4929} 4930 4931// String returns the string representation 4932func (s EgressFilter) String() string { 4933 return awsutil.Prettify(s) 4934} 4935 4936// GoString returns the string representation 4937func (s EgressFilter) GoString() string { 4938 return s.String() 4939} 4940 4941// Validate inspects the fields of the type to determine if they are valid. 4942func (s *EgressFilter) Validate() error { 4943 invalidParams := request.ErrInvalidParams{Context: "EgressFilter"} 4944 if s.Type == nil { 4945 invalidParams.Add(request.NewErrParamRequired("Type")) 4946 } 4947 4948 if invalidParams.Len() > 0 { 4949 return invalidParams 4950 } 4951 return nil 4952} 4953 4954// SetType sets the Type field's value. 4955func (s *EgressFilter) SetType(v string) *EgressFilter { 4956 s.Type = &v 4957 return s 4958} 4959 4960// An object representing an access log file. 4961type FileAccessLog struct { 4962 _ struct{} `type:"structure"` 4963 4964 // Path is a required field 4965 Path *string `locationName:"path" min:"1" type:"string" required:"true"` 4966} 4967 4968// String returns the string representation 4969func (s FileAccessLog) String() string { 4970 return awsutil.Prettify(s) 4971} 4972 4973// GoString returns the string representation 4974func (s FileAccessLog) GoString() string { 4975 return s.String() 4976} 4977 4978// Validate inspects the fields of the type to determine if they are valid. 4979func (s *FileAccessLog) Validate() error { 4980 invalidParams := request.ErrInvalidParams{Context: "FileAccessLog"} 4981 if s.Path == nil { 4982 invalidParams.Add(request.NewErrParamRequired("Path")) 4983 } 4984 if s.Path != nil && len(*s.Path) < 1 { 4985 invalidParams.Add(request.NewErrParamMinLen("Path", 1)) 4986 } 4987 4988 if invalidParams.Len() > 0 { 4989 return invalidParams 4990 } 4991 return nil 4992} 4993 4994// SetPath sets the Path field's value. 4995func (s *FileAccessLog) SetPath(v string) *FileAccessLog { 4996 s.Path = &v 4997 return s 4998} 4999 5000// An object representing the method and value to match the header value sent 5001// with a request. Specify one match method. 5002type HeaderMatchMethod struct { 5003 _ struct{} `type:"structure"` 5004 5005 Exact *string `locationName:"exact" min:"1" type:"string"` 5006 5007 Prefix *string `locationName:"prefix" min:"1" type:"string"` 5008 5009 // The range of values to match on. The first character of the range is included 5010 // in the range, though the last character is not. For example, if the range 5011 // specified were 1-100, only values 1-99 would be matched. 5012 Range *MatchRange `locationName:"range" type:"structure"` 5013 5014 Regex *string `locationName:"regex" min:"1" type:"string"` 5015 5016 Suffix *string `locationName:"suffix" min:"1" type:"string"` 5017} 5018 5019// String returns the string representation 5020func (s HeaderMatchMethod) String() string { 5021 return awsutil.Prettify(s) 5022} 5023 5024// GoString returns the string representation 5025func (s HeaderMatchMethod) GoString() string { 5026 return s.String() 5027} 5028 5029// Validate inspects the fields of the type to determine if they are valid. 5030func (s *HeaderMatchMethod) Validate() error { 5031 invalidParams := request.ErrInvalidParams{Context: "HeaderMatchMethod"} 5032 if s.Exact != nil && len(*s.Exact) < 1 { 5033 invalidParams.Add(request.NewErrParamMinLen("Exact", 1)) 5034 } 5035 if s.Prefix != nil && len(*s.Prefix) < 1 { 5036 invalidParams.Add(request.NewErrParamMinLen("Prefix", 1)) 5037 } 5038 if s.Regex != nil && len(*s.Regex) < 1 { 5039 invalidParams.Add(request.NewErrParamMinLen("Regex", 1)) 5040 } 5041 if s.Suffix != nil && len(*s.Suffix) < 1 { 5042 invalidParams.Add(request.NewErrParamMinLen("Suffix", 1)) 5043 } 5044 if s.Range != nil { 5045 if err := s.Range.Validate(); err != nil { 5046 invalidParams.AddNested("Range", err.(request.ErrInvalidParams)) 5047 } 5048 } 5049 5050 if invalidParams.Len() > 0 { 5051 return invalidParams 5052 } 5053 return nil 5054} 5055 5056// SetExact sets the Exact field's value. 5057func (s *HeaderMatchMethod) SetExact(v string) *HeaderMatchMethod { 5058 s.Exact = &v 5059 return s 5060} 5061 5062// SetPrefix sets the Prefix field's value. 5063func (s *HeaderMatchMethod) SetPrefix(v string) *HeaderMatchMethod { 5064 s.Prefix = &v 5065 return s 5066} 5067 5068// SetRange sets the Range field's value. 5069func (s *HeaderMatchMethod) SetRange(v *MatchRange) *HeaderMatchMethod { 5070 s.Range = v 5071 return s 5072} 5073 5074// SetRegex sets the Regex field's value. 5075func (s *HeaderMatchMethod) SetRegex(v string) *HeaderMatchMethod { 5076 s.Regex = &v 5077 return s 5078} 5079 5080// SetSuffix sets the Suffix field's value. 5081func (s *HeaderMatchMethod) SetSuffix(v string) *HeaderMatchMethod { 5082 s.Suffix = &v 5083 return s 5084} 5085 5086// An object representing the health check policy for a virtual node's listener. 5087type HealthCheckPolicy struct { 5088 _ struct{} `type:"structure"` 5089 5090 // HealthyThreshold is a required field 5091 HealthyThreshold *int64 `locationName:"healthyThreshold" min:"2" type:"integer" required:"true"` 5092 5093 // IntervalMillis is a required field 5094 IntervalMillis *int64 `locationName:"intervalMillis" min:"5000" type:"long" required:"true"` 5095 5096 Path *string `locationName:"path" type:"string"` 5097 5098 Port *int64 `locationName:"port" min:"1" type:"integer"` 5099 5100 // Protocol is a required field 5101 Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"PortProtocol"` 5102 5103 // TimeoutMillis is a required field 5104 TimeoutMillis *int64 `locationName:"timeoutMillis" min:"2000" type:"long" required:"true"` 5105 5106 // UnhealthyThreshold is a required field 5107 UnhealthyThreshold *int64 `locationName:"unhealthyThreshold" min:"2" type:"integer" required:"true"` 5108} 5109 5110// String returns the string representation 5111func (s HealthCheckPolicy) String() string { 5112 return awsutil.Prettify(s) 5113} 5114 5115// GoString returns the string representation 5116func (s HealthCheckPolicy) GoString() string { 5117 return s.String() 5118} 5119 5120// Validate inspects the fields of the type to determine if they are valid. 5121func (s *HealthCheckPolicy) Validate() error { 5122 invalidParams := request.ErrInvalidParams{Context: "HealthCheckPolicy"} 5123 if s.HealthyThreshold == nil { 5124 invalidParams.Add(request.NewErrParamRequired("HealthyThreshold")) 5125 } 5126 if s.HealthyThreshold != nil && *s.HealthyThreshold < 2 { 5127 invalidParams.Add(request.NewErrParamMinValue("HealthyThreshold", 2)) 5128 } 5129 if s.IntervalMillis == nil { 5130 invalidParams.Add(request.NewErrParamRequired("IntervalMillis")) 5131 } 5132 if s.IntervalMillis != nil && *s.IntervalMillis < 5000 { 5133 invalidParams.Add(request.NewErrParamMinValue("IntervalMillis", 5000)) 5134 } 5135 if s.Port != nil && *s.Port < 1 { 5136 invalidParams.Add(request.NewErrParamMinValue("Port", 1)) 5137 } 5138 if s.Protocol == nil { 5139 invalidParams.Add(request.NewErrParamRequired("Protocol")) 5140 } 5141 if s.TimeoutMillis == nil { 5142 invalidParams.Add(request.NewErrParamRequired("TimeoutMillis")) 5143 } 5144 if s.TimeoutMillis != nil && *s.TimeoutMillis < 2000 { 5145 invalidParams.Add(request.NewErrParamMinValue("TimeoutMillis", 2000)) 5146 } 5147 if s.UnhealthyThreshold == nil { 5148 invalidParams.Add(request.NewErrParamRequired("UnhealthyThreshold")) 5149 } 5150 if s.UnhealthyThreshold != nil && *s.UnhealthyThreshold < 2 { 5151 invalidParams.Add(request.NewErrParamMinValue("UnhealthyThreshold", 2)) 5152 } 5153 5154 if invalidParams.Len() > 0 { 5155 return invalidParams 5156 } 5157 return nil 5158} 5159 5160// SetHealthyThreshold sets the HealthyThreshold field's value. 5161func (s *HealthCheckPolicy) SetHealthyThreshold(v int64) *HealthCheckPolicy { 5162 s.HealthyThreshold = &v 5163 return s 5164} 5165 5166// SetIntervalMillis sets the IntervalMillis field's value. 5167func (s *HealthCheckPolicy) SetIntervalMillis(v int64) *HealthCheckPolicy { 5168 s.IntervalMillis = &v 5169 return s 5170} 5171 5172// SetPath sets the Path field's value. 5173func (s *HealthCheckPolicy) SetPath(v string) *HealthCheckPolicy { 5174 s.Path = &v 5175 return s 5176} 5177 5178// SetPort sets the Port field's value. 5179func (s *HealthCheckPolicy) SetPort(v int64) *HealthCheckPolicy { 5180 s.Port = &v 5181 return s 5182} 5183 5184// SetProtocol sets the Protocol field's value. 5185func (s *HealthCheckPolicy) SetProtocol(v string) *HealthCheckPolicy { 5186 s.Protocol = &v 5187 return s 5188} 5189 5190// SetTimeoutMillis sets the TimeoutMillis field's value. 5191func (s *HealthCheckPolicy) SetTimeoutMillis(v int64) *HealthCheckPolicy { 5192 s.TimeoutMillis = &v 5193 return s 5194} 5195 5196// SetUnhealthyThreshold sets the UnhealthyThreshold field's value. 5197func (s *HealthCheckPolicy) SetUnhealthyThreshold(v int64) *HealthCheckPolicy { 5198 s.UnhealthyThreshold = &v 5199 return s 5200} 5201 5202// An object that represents a retry policy. 5203type HttpRetryPolicy struct { 5204 _ struct{} `type:"structure"` 5205 5206 HttpRetryEvents []*string `locationName:"httpRetryEvents" min:"1" type:"list"` 5207 5208 // MaxRetries is a required field 5209 MaxRetries *int64 `locationName:"maxRetries" type:"long" required:"true"` 5210 5211 // An object representing the duration between retry attempts. 5212 // 5213 // PerRetryTimeout is a required field 5214 PerRetryTimeout *Duration `locationName:"perRetryTimeout" type:"structure" required:"true"` 5215 5216 TcpRetryEvents []*string `locationName:"tcpRetryEvents" min:"1" type:"list"` 5217} 5218 5219// String returns the string representation 5220func (s HttpRetryPolicy) String() string { 5221 return awsutil.Prettify(s) 5222} 5223 5224// GoString returns the string representation 5225func (s HttpRetryPolicy) GoString() string { 5226 return s.String() 5227} 5228 5229// Validate inspects the fields of the type to determine if they are valid. 5230func (s *HttpRetryPolicy) Validate() error { 5231 invalidParams := request.ErrInvalidParams{Context: "HttpRetryPolicy"} 5232 if s.HttpRetryEvents != nil && len(s.HttpRetryEvents) < 1 { 5233 invalidParams.Add(request.NewErrParamMinLen("HttpRetryEvents", 1)) 5234 } 5235 if s.MaxRetries == nil { 5236 invalidParams.Add(request.NewErrParamRequired("MaxRetries")) 5237 } 5238 if s.PerRetryTimeout == nil { 5239 invalidParams.Add(request.NewErrParamRequired("PerRetryTimeout")) 5240 } 5241 if s.TcpRetryEvents != nil && len(s.TcpRetryEvents) < 1 { 5242 invalidParams.Add(request.NewErrParamMinLen("TcpRetryEvents", 1)) 5243 } 5244 5245 if invalidParams.Len() > 0 { 5246 return invalidParams 5247 } 5248 return nil 5249} 5250 5251// SetHttpRetryEvents sets the HttpRetryEvents field's value. 5252func (s *HttpRetryPolicy) SetHttpRetryEvents(v []*string) *HttpRetryPolicy { 5253 s.HttpRetryEvents = v 5254 return s 5255} 5256 5257// SetMaxRetries sets the MaxRetries field's value. 5258func (s *HttpRetryPolicy) SetMaxRetries(v int64) *HttpRetryPolicy { 5259 s.MaxRetries = &v 5260 return s 5261} 5262 5263// SetPerRetryTimeout sets the PerRetryTimeout field's value. 5264func (s *HttpRetryPolicy) SetPerRetryTimeout(v *Duration) *HttpRetryPolicy { 5265 s.PerRetryTimeout = v 5266 return s 5267} 5268 5269// SetTcpRetryEvents sets the TcpRetryEvents field's value. 5270func (s *HttpRetryPolicy) SetTcpRetryEvents(v []*string) *HttpRetryPolicy { 5271 s.TcpRetryEvents = v 5272 return s 5273} 5274 5275// An object representing the HTTP routing specification for a route. 5276type HttpRoute struct { 5277 _ struct{} `type:"structure"` 5278 5279 // An object representing the traffic distribution requirements for matched 5280 // HTTP requests. 5281 // 5282 // Action is a required field 5283 Action *HttpRouteAction `locationName:"action" type:"structure" required:"true"` 5284 5285 // An object representing the requirements for a route to match HTTP requests 5286 // for a virtual router. 5287 // 5288 // Match is a required field 5289 Match *HttpRouteMatch `locationName:"match" type:"structure" required:"true"` 5290 5291 // An object that represents a retry policy. 5292 RetryPolicy *HttpRetryPolicy `locationName:"retryPolicy" type:"structure"` 5293} 5294 5295// String returns the string representation 5296func (s HttpRoute) String() string { 5297 return awsutil.Prettify(s) 5298} 5299 5300// GoString returns the string representation 5301func (s HttpRoute) GoString() string { 5302 return s.String() 5303} 5304 5305// Validate inspects the fields of the type to determine if they are valid. 5306func (s *HttpRoute) Validate() error { 5307 invalidParams := request.ErrInvalidParams{Context: "HttpRoute"} 5308 if s.Action == nil { 5309 invalidParams.Add(request.NewErrParamRequired("Action")) 5310 } 5311 if s.Match == nil { 5312 invalidParams.Add(request.NewErrParamRequired("Match")) 5313 } 5314 if s.Action != nil { 5315 if err := s.Action.Validate(); err != nil { 5316 invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) 5317 } 5318 } 5319 if s.Match != nil { 5320 if err := s.Match.Validate(); err != nil { 5321 invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) 5322 } 5323 } 5324 if s.RetryPolicy != nil { 5325 if err := s.RetryPolicy.Validate(); err != nil { 5326 invalidParams.AddNested("RetryPolicy", err.(request.ErrInvalidParams)) 5327 } 5328 } 5329 5330 if invalidParams.Len() > 0 { 5331 return invalidParams 5332 } 5333 return nil 5334} 5335 5336// SetAction sets the Action field's value. 5337func (s *HttpRoute) SetAction(v *HttpRouteAction) *HttpRoute { 5338 s.Action = v 5339 return s 5340} 5341 5342// SetMatch sets the Match field's value. 5343func (s *HttpRoute) SetMatch(v *HttpRouteMatch) *HttpRoute { 5344 s.Match = v 5345 return s 5346} 5347 5348// SetRetryPolicy sets the RetryPolicy field's value. 5349func (s *HttpRoute) SetRetryPolicy(v *HttpRetryPolicy) *HttpRoute { 5350 s.RetryPolicy = v 5351 return s 5352} 5353 5354// An object representing the traffic distribution requirements for matched 5355// HTTP requests. 5356type HttpRouteAction struct { 5357 _ struct{} `type:"structure"` 5358 5359 // WeightedTargets is a required field 5360 WeightedTargets []*WeightedTarget `locationName:"weightedTargets" min:"1" type:"list" required:"true"` 5361} 5362 5363// String returns the string representation 5364func (s HttpRouteAction) String() string { 5365 return awsutil.Prettify(s) 5366} 5367 5368// GoString returns the string representation 5369func (s HttpRouteAction) GoString() string { 5370 return s.String() 5371} 5372 5373// Validate inspects the fields of the type to determine if they are valid. 5374func (s *HttpRouteAction) Validate() error { 5375 invalidParams := request.ErrInvalidParams{Context: "HttpRouteAction"} 5376 if s.WeightedTargets == nil { 5377 invalidParams.Add(request.NewErrParamRequired("WeightedTargets")) 5378 } 5379 if s.WeightedTargets != nil && len(s.WeightedTargets) < 1 { 5380 invalidParams.Add(request.NewErrParamMinLen("WeightedTargets", 1)) 5381 } 5382 if s.WeightedTargets != nil { 5383 for i, v := range s.WeightedTargets { 5384 if v == nil { 5385 continue 5386 } 5387 if err := v.Validate(); err != nil { 5388 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WeightedTargets", i), err.(request.ErrInvalidParams)) 5389 } 5390 } 5391 } 5392 5393 if invalidParams.Len() > 0 { 5394 return invalidParams 5395 } 5396 return nil 5397} 5398 5399// SetWeightedTargets sets the WeightedTargets field's value. 5400func (s *HttpRouteAction) SetWeightedTargets(v []*WeightedTarget) *HttpRouteAction { 5401 s.WeightedTargets = v 5402 return s 5403} 5404 5405// An object representing the HTTP header in the request. 5406type HttpRouteHeader struct { 5407 _ struct{} `type:"structure"` 5408 5409 Invert *bool `locationName:"invert" type:"boolean"` 5410 5411 // An object representing the method and value to match the header value sent 5412 // with a request. Specify one match method. 5413 Match *HeaderMatchMethod `locationName:"match" type:"structure"` 5414 5415 // Name is a required field 5416 Name *string `locationName:"name" min:"1" type:"string" required:"true"` 5417} 5418 5419// String returns the string representation 5420func (s HttpRouteHeader) String() string { 5421 return awsutil.Prettify(s) 5422} 5423 5424// GoString returns the string representation 5425func (s HttpRouteHeader) GoString() string { 5426 return s.String() 5427} 5428 5429// Validate inspects the fields of the type to determine if they are valid. 5430func (s *HttpRouteHeader) Validate() error { 5431 invalidParams := request.ErrInvalidParams{Context: "HttpRouteHeader"} 5432 if s.Name == nil { 5433 invalidParams.Add(request.NewErrParamRequired("Name")) 5434 } 5435 if s.Name != nil && len(*s.Name) < 1 { 5436 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 5437 } 5438 if s.Match != nil { 5439 if err := s.Match.Validate(); err != nil { 5440 invalidParams.AddNested("Match", err.(request.ErrInvalidParams)) 5441 } 5442 } 5443 5444 if invalidParams.Len() > 0 { 5445 return invalidParams 5446 } 5447 return nil 5448} 5449 5450// SetInvert sets the Invert field's value. 5451func (s *HttpRouteHeader) SetInvert(v bool) *HttpRouteHeader { 5452 s.Invert = &v 5453 return s 5454} 5455 5456// SetMatch sets the Match field's value. 5457func (s *HttpRouteHeader) SetMatch(v *HeaderMatchMethod) *HttpRouteHeader { 5458 s.Match = v 5459 return s 5460} 5461 5462// SetName sets the Name field's value. 5463func (s *HttpRouteHeader) SetName(v string) *HttpRouteHeader { 5464 s.Name = &v 5465 return s 5466} 5467 5468// An object representing the requirements for a route to match HTTP requests 5469// for a virtual router. 5470type HttpRouteMatch struct { 5471 _ struct{} `type:"structure"` 5472 5473 Headers []*HttpRouteHeader `locationName:"headers" min:"1" type:"list"` 5474 5475 Method *string `locationName:"method" type:"string" enum:"HttpMethod"` 5476 5477 // Prefix is a required field 5478 Prefix *string `locationName:"prefix" type:"string" required:"true"` 5479 5480 Scheme *string `locationName:"scheme" type:"string" enum:"HttpScheme"` 5481} 5482 5483// String returns the string representation 5484func (s HttpRouteMatch) String() string { 5485 return awsutil.Prettify(s) 5486} 5487 5488// GoString returns the string representation 5489func (s HttpRouteMatch) GoString() string { 5490 return s.String() 5491} 5492 5493// Validate inspects the fields of the type to determine if they are valid. 5494func (s *HttpRouteMatch) Validate() error { 5495 invalidParams := request.ErrInvalidParams{Context: "HttpRouteMatch"} 5496 if s.Headers != nil && len(s.Headers) < 1 { 5497 invalidParams.Add(request.NewErrParamMinLen("Headers", 1)) 5498 } 5499 if s.Prefix == nil { 5500 invalidParams.Add(request.NewErrParamRequired("Prefix")) 5501 } 5502 if s.Headers != nil { 5503 for i, v := range s.Headers { 5504 if v == nil { 5505 continue 5506 } 5507 if err := v.Validate(); err != nil { 5508 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Headers", i), err.(request.ErrInvalidParams)) 5509 } 5510 } 5511 } 5512 5513 if invalidParams.Len() > 0 { 5514 return invalidParams 5515 } 5516 return nil 5517} 5518 5519// SetHeaders sets the Headers field's value. 5520func (s *HttpRouteMatch) SetHeaders(v []*HttpRouteHeader) *HttpRouteMatch { 5521 s.Headers = v 5522 return s 5523} 5524 5525// SetMethod sets the Method field's value. 5526func (s *HttpRouteMatch) SetMethod(v string) *HttpRouteMatch { 5527 s.Method = &v 5528 return s 5529} 5530 5531// SetPrefix sets the Prefix field's value. 5532func (s *HttpRouteMatch) SetPrefix(v string) *HttpRouteMatch { 5533 s.Prefix = &v 5534 return s 5535} 5536 5537// SetScheme sets the Scheme field's value. 5538func (s *HttpRouteMatch) SetScheme(v string) *HttpRouteMatch { 5539 s.Scheme = &v 5540 return s 5541} 5542 5543type ListMeshesInput struct { 5544 _ struct{} `type:"structure"` 5545 5546 Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` 5547 5548 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 5549} 5550 5551// String returns the string representation 5552func (s ListMeshesInput) String() string { 5553 return awsutil.Prettify(s) 5554} 5555 5556// GoString returns the string representation 5557func (s ListMeshesInput) GoString() string { 5558 return s.String() 5559} 5560 5561// Validate inspects the fields of the type to determine if they are valid. 5562func (s *ListMeshesInput) Validate() error { 5563 invalidParams := request.ErrInvalidParams{Context: "ListMeshesInput"} 5564 if s.Limit != nil && *s.Limit < 1 { 5565 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 5566 } 5567 5568 if invalidParams.Len() > 0 { 5569 return invalidParams 5570 } 5571 return nil 5572} 5573 5574// SetLimit sets the Limit field's value. 5575func (s *ListMeshesInput) SetLimit(v int64) *ListMeshesInput { 5576 s.Limit = &v 5577 return s 5578} 5579 5580// SetNextToken sets the NextToken field's value. 5581func (s *ListMeshesInput) SetNextToken(v string) *ListMeshesInput { 5582 s.NextToken = &v 5583 return s 5584} 5585 5586type ListMeshesOutput struct { 5587 _ struct{} `type:"structure"` 5588 5589 // Meshes is a required field 5590 Meshes []*MeshRef `locationName:"meshes" type:"list" required:"true"` 5591 5592 NextToken *string `locationName:"nextToken" type:"string"` 5593} 5594 5595// String returns the string representation 5596func (s ListMeshesOutput) String() string { 5597 return awsutil.Prettify(s) 5598} 5599 5600// GoString returns the string representation 5601func (s ListMeshesOutput) GoString() string { 5602 return s.String() 5603} 5604 5605// SetMeshes sets the Meshes field's value. 5606func (s *ListMeshesOutput) SetMeshes(v []*MeshRef) *ListMeshesOutput { 5607 s.Meshes = v 5608 return s 5609} 5610 5611// SetNextToken sets the NextToken field's value. 5612func (s *ListMeshesOutput) SetNextToken(v string) *ListMeshesOutput { 5613 s.NextToken = &v 5614 return s 5615} 5616 5617type ListRoutesInput struct { 5618 _ struct{} `type:"structure"` 5619 5620 Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` 5621 5622 // MeshName is a required field 5623 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 5624 5625 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 5626 5627 // VirtualRouterName is a required field 5628 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 5629} 5630 5631// String returns the string representation 5632func (s ListRoutesInput) String() string { 5633 return awsutil.Prettify(s) 5634} 5635 5636// GoString returns the string representation 5637func (s ListRoutesInput) GoString() string { 5638 return s.String() 5639} 5640 5641// Validate inspects the fields of the type to determine if they are valid. 5642func (s *ListRoutesInput) Validate() error { 5643 invalidParams := request.ErrInvalidParams{Context: "ListRoutesInput"} 5644 if s.Limit != nil && *s.Limit < 1 { 5645 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 5646 } 5647 if s.MeshName == nil { 5648 invalidParams.Add(request.NewErrParamRequired("MeshName")) 5649 } 5650 if s.MeshName != nil && len(*s.MeshName) < 1 { 5651 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 5652 } 5653 if s.VirtualRouterName == nil { 5654 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 5655 } 5656 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 5657 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 5658 } 5659 5660 if invalidParams.Len() > 0 { 5661 return invalidParams 5662 } 5663 return nil 5664} 5665 5666// SetLimit sets the Limit field's value. 5667func (s *ListRoutesInput) SetLimit(v int64) *ListRoutesInput { 5668 s.Limit = &v 5669 return s 5670} 5671 5672// SetMeshName sets the MeshName field's value. 5673func (s *ListRoutesInput) SetMeshName(v string) *ListRoutesInput { 5674 s.MeshName = &v 5675 return s 5676} 5677 5678// SetNextToken sets the NextToken field's value. 5679func (s *ListRoutesInput) SetNextToken(v string) *ListRoutesInput { 5680 s.NextToken = &v 5681 return s 5682} 5683 5684// SetVirtualRouterName sets the VirtualRouterName field's value. 5685func (s *ListRoutesInput) SetVirtualRouterName(v string) *ListRoutesInput { 5686 s.VirtualRouterName = &v 5687 return s 5688} 5689 5690type ListRoutesOutput struct { 5691 _ struct{} `type:"structure"` 5692 5693 NextToken *string `locationName:"nextToken" type:"string"` 5694 5695 // Routes is a required field 5696 Routes []*RouteRef `locationName:"routes" type:"list" required:"true"` 5697} 5698 5699// String returns the string representation 5700func (s ListRoutesOutput) String() string { 5701 return awsutil.Prettify(s) 5702} 5703 5704// GoString returns the string representation 5705func (s ListRoutesOutput) GoString() string { 5706 return s.String() 5707} 5708 5709// SetNextToken sets the NextToken field's value. 5710func (s *ListRoutesOutput) SetNextToken(v string) *ListRoutesOutput { 5711 s.NextToken = &v 5712 return s 5713} 5714 5715// SetRoutes sets the Routes field's value. 5716func (s *ListRoutesOutput) SetRoutes(v []*RouteRef) *ListRoutesOutput { 5717 s.Routes = v 5718 return s 5719} 5720 5721type ListTagsForResourceInput struct { 5722 _ struct{} `type:"structure"` 5723 5724 Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` 5725 5726 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 5727 5728 // ResourceArn is a required field 5729 ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"` 5730} 5731 5732// String returns the string representation 5733func (s ListTagsForResourceInput) String() string { 5734 return awsutil.Prettify(s) 5735} 5736 5737// GoString returns the string representation 5738func (s ListTagsForResourceInput) GoString() string { 5739 return s.String() 5740} 5741 5742// Validate inspects the fields of the type to determine if they are valid. 5743func (s *ListTagsForResourceInput) Validate() error { 5744 invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} 5745 if s.Limit != nil && *s.Limit < 1 { 5746 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 5747 } 5748 if s.ResourceArn == nil { 5749 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 5750 } 5751 5752 if invalidParams.Len() > 0 { 5753 return invalidParams 5754 } 5755 return nil 5756} 5757 5758// SetLimit sets the Limit field's value. 5759func (s *ListTagsForResourceInput) SetLimit(v int64) *ListTagsForResourceInput { 5760 s.Limit = &v 5761 return s 5762} 5763 5764// SetNextToken sets the NextToken field's value. 5765func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput { 5766 s.NextToken = &v 5767 return s 5768} 5769 5770// SetResourceArn sets the ResourceArn field's value. 5771func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { 5772 s.ResourceArn = &v 5773 return s 5774} 5775 5776type ListTagsForResourceOutput struct { 5777 _ struct{} `type:"structure"` 5778 5779 NextToken *string `locationName:"nextToken" type:"string"` 5780 5781 // Tags is a required field 5782 Tags []*TagRef `locationName:"tags" type:"list" required:"true"` 5783} 5784 5785// String returns the string representation 5786func (s ListTagsForResourceOutput) String() string { 5787 return awsutil.Prettify(s) 5788} 5789 5790// GoString returns the string representation 5791func (s ListTagsForResourceOutput) GoString() string { 5792 return s.String() 5793} 5794 5795// SetNextToken sets the NextToken field's value. 5796func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput { 5797 s.NextToken = &v 5798 return s 5799} 5800 5801// SetTags sets the Tags field's value. 5802func (s *ListTagsForResourceOutput) SetTags(v []*TagRef) *ListTagsForResourceOutput { 5803 s.Tags = v 5804 return s 5805} 5806 5807type ListVirtualNodesInput struct { 5808 _ struct{} `type:"structure"` 5809 5810 Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` 5811 5812 // MeshName is a required field 5813 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 5814 5815 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 5816} 5817 5818// String returns the string representation 5819func (s ListVirtualNodesInput) String() string { 5820 return awsutil.Prettify(s) 5821} 5822 5823// GoString returns the string representation 5824func (s ListVirtualNodesInput) GoString() string { 5825 return s.String() 5826} 5827 5828// Validate inspects the fields of the type to determine if they are valid. 5829func (s *ListVirtualNodesInput) Validate() error { 5830 invalidParams := request.ErrInvalidParams{Context: "ListVirtualNodesInput"} 5831 if s.Limit != nil && *s.Limit < 1 { 5832 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 5833 } 5834 if s.MeshName == nil { 5835 invalidParams.Add(request.NewErrParamRequired("MeshName")) 5836 } 5837 if s.MeshName != nil && len(*s.MeshName) < 1 { 5838 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 5839 } 5840 5841 if invalidParams.Len() > 0 { 5842 return invalidParams 5843 } 5844 return nil 5845} 5846 5847// SetLimit sets the Limit field's value. 5848func (s *ListVirtualNodesInput) SetLimit(v int64) *ListVirtualNodesInput { 5849 s.Limit = &v 5850 return s 5851} 5852 5853// SetMeshName sets the MeshName field's value. 5854func (s *ListVirtualNodesInput) SetMeshName(v string) *ListVirtualNodesInput { 5855 s.MeshName = &v 5856 return s 5857} 5858 5859// SetNextToken sets the NextToken field's value. 5860func (s *ListVirtualNodesInput) SetNextToken(v string) *ListVirtualNodesInput { 5861 s.NextToken = &v 5862 return s 5863} 5864 5865type ListVirtualNodesOutput struct { 5866 _ struct{} `type:"structure"` 5867 5868 NextToken *string `locationName:"nextToken" type:"string"` 5869 5870 // VirtualNodes is a required field 5871 VirtualNodes []*VirtualNodeRef `locationName:"virtualNodes" type:"list" required:"true"` 5872} 5873 5874// String returns the string representation 5875func (s ListVirtualNodesOutput) String() string { 5876 return awsutil.Prettify(s) 5877} 5878 5879// GoString returns the string representation 5880func (s ListVirtualNodesOutput) GoString() string { 5881 return s.String() 5882} 5883 5884// SetNextToken sets the NextToken field's value. 5885func (s *ListVirtualNodesOutput) SetNextToken(v string) *ListVirtualNodesOutput { 5886 s.NextToken = &v 5887 return s 5888} 5889 5890// SetVirtualNodes sets the VirtualNodes field's value. 5891func (s *ListVirtualNodesOutput) SetVirtualNodes(v []*VirtualNodeRef) *ListVirtualNodesOutput { 5892 s.VirtualNodes = v 5893 return s 5894} 5895 5896type ListVirtualRoutersInput struct { 5897 _ struct{} `type:"structure"` 5898 5899 Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` 5900 5901 // MeshName is a required field 5902 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 5903 5904 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 5905} 5906 5907// String returns the string representation 5908func (s ListVirtualRoutersInput) String() string { 5909 return awsutil.Prettify(s) 5910} 5911 5912// GoString returns the string representation 5913func (s ListVirtualRoutersInput) GoString() string { 5914 return s.String() 5915} 5916 5917// Validate inspects the fields of the type to determine if they are valid. 5918func (s *ListVirtualRoutersInput) Validate() error { 5919 invalidParams := request.ErrInvalidParams{Context: "ListVirtualRoutersInput"} 5920 if s.Limit != nil && *s.Limit < 1 { 5921 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 5922 } 5923 if s.MeshName == nil { 5924 invalidParams.Add(request.NewErrParamRequired("MeshName")) 5925 } 5926 if s.MeshName != nil && len(*s.MeshName) < 1 { 5927 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 5928 } 5929 5930 if invalidParams.Len() > 0 { 5931 return invalidParams 5932 } 5933 return nil 5934} 5935 5936// SetLimit sets the Limit field's value. 5937func (s *ListVirtualRoutersInput) SetLimit(v int64) *ListVirtualRoutersInput { 5938 s.Limit = &v 5939 return s 5940} 5941 5942// SetMeshName sets the MeshName field's value. 5943func (s *ListVirtualRoutersInput) SetMeshName(v string) *ListVirtualRoutersInput { 5944 s.MeshName = &v 5945 return s 5946} 5947 5948// SetNextToken sets the NextToken field's value. 5949func (s *ListVirtualRoutersInput) SetNextToken(v string) *ListVirtualRoutersInput { 5950 s.NextToken = &v 5951 return s 5952} 5953 5954type ListVirtualRoutersOutput struct { 5955 _ struct{} `type:"structure"` 5956 5957 NextToken *string `locationName:"nextToken" type:"string"` 5958 5959 // VirtualRouters is a required field 5960 VirtualRouters []*VirtualRouterRef `locationName:"virtualRouters" type:"list" required:"true"` 5961} 5962 5963// String returns the string representation 5964func (s ListVirtualRoutersOutput) String() string { 5965 return awsutil.Prettify(s) 5966} 5967 5968// GoString returns the string representation 5969func (s ListVirtualRoutersOutput) GoString() string { 5970 return s.String() 5971} 5972 5973// SetNextToken sets the NextToken field's value. 5974func (s *ListVirtualRoutersOutput) SetNextToken(v string) *ListVirtualRoutersOutput { 5975 s.NextToken = &v 5976 return s 5977} 5978 5979// SetVirtualRouters sets the VirtualRouters field's value. 5980func (s *ListVirtualRoutersOutput) SetVirtualRouters(v []*VirtualRouterRef) *ListVirtualRoutersOutput { 5981 s.VirtualRouters = v 5982 return s 5983} 5984 5985type ListVirtualServicesInput struct { 5986 _ struct{} `type:"structure"` 5987 5988 Limit *int64 `location:"querystring" locationName:"limit" min:"1" type:"integer"` 5989 5990 // MeshName is a required field 5991 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 5992 5993 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 5994} 5995 5996// String returns the string representation 5997func (s ListVirtualServicesInput) String() string { 5998 return awsutil.Prettify(s) 5999} 6000 6001// GoString returns the string representation 6002func (s ListVirtualServicesInput) GoString() string { 6003 return s.String() 6004} 6005 6006// Validate inspects the fields of the type to determine if they are valid. 6007func (s *ListVirtualServicesInput) Validate() error { 6008 invalidParams := request.ErrInvalidParams{Context: "ListVirtualServicesInput"} 6009 if s.Limit != nil && *s.Limit < 1 { 6010 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 6011 } 6012 if s.MeshName == nil { 6013 invalidParams.Add(request.NewErrParamRequired("MeshName")) 6014 } 6015 if s.MeshName != nil && len(*s.MeshName) < 1 { 6016 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 6017 } 6018 6019 if invalidParams.Len() > 0 { 6020 return invalidParams 6021 } 6022 return nil 6023} 6024 6025// SetLimit sets the Limit field's value. 6026func (s *ListVirtualServicesInput) SetLimit(v int64) *ListVirtualServicesInput { 6027 s.Limit = &v 6028 return s 6029} 6030 6031// SetMeshName sets the MeshName field's value. 6032func (s *ListVirtualServicesInput) SetMeshName(v string) *ListVirtualServicesInput { 6033 s.MeshName = &v 6034 return s 6035} 6036 6037// SetNextToken sets the NextToken field's value. 6038func (s *ListVirtualServicesInput) SetNextToken(v string) *ListVirtualServicesInput { 6039 s.NextToken = &v 6040 return s 6041} 6042 6043type ListVirtualServicesOutput struct { 6044 _ struct{} `type:"structure"` 6045 6046 NextToken *string `locationName:"nextToken" type:"string"` 6047 6048 // VirtualServices is a required field 6049 VirtualServices []*VirtualServiceRef `locationName:"virtualServices" type:"list" required:"true"` 6050} 6051 6052// String returns the string representation 6053func (s ListVirtualServicesOutput) String() string { 6054 return awsutil.Prettify(s) 6055} 6056 6057// GoString returns the string representation 6058func (s ListVirtualServicesOutput) GoString() string { 6059 return s.String() 6060} 6061 6062// SetNextToken sets the NextToken field's value. 6063func (s *ListVirtualServicesOutput) SetNextToken(v string) *ListVirtualServicesOutput { 6064 s.NextToken = &v 6065 return s 6066} 6067 6068// SetVirtualServices sets the VirtualServices field's value. 6069func (s *ListVirtualServicesOutput) SetVirtualServices(v []*VirtualServiceRef) *ListVirtualServicesOutput { 6070 s.VirtualServices = v 6071 return s 6072} 6073 6074// An object representing a listener for a virtual node. 6075type Listener struct { 6076 _ struct{} `type:"structure"` 6077 6078 // An object representing the health check policy for a virtual node's listener. 6079 HealthCheck *HealthCheckPolicy `locationName:"healthCheck" type:"structure"` 6080 6081 // An object representing a virtual node or virtual router listener port mapping. 6082 // 6083 // PortMapping is a required field 6084 PortMapping *PortMapping `locationName:"portMapping" type:"structure" required:"true"` 6085} 6086 6087// String returns the string representation 6088func (s Listener) String() string { 6089 return awsutil.Prettify(s) 6090} 6091 6092// GoString returns the string representation 6093func (s Listener) GoString() string { 6094 return s.String() 6095} 6096 6097// Validate inspects the fields of the type to determine if they are valid. 6098func (s *Listener) Validate() error { 6099 invalidParams := request.ErrInvalidParams{Context: "Listener"} 6100 if s.PortMapping == nil { 6101 invalidParams.Add(request.NewErrParamRequired("PortMapping")) 6102 } 6103 if s.HealthCheck != nil { 6104 if err := s.HealthCheck.Validate(); err != nil { 6105 invalidParams.AddNested("HealthCheck", err.(request.ErrInvalidParams)) 6106 } 6107 } 6108 if s.PortMapping != nil { 6109 if err := s.PortMapping.Validate(); err != nil { 6110 invalidParams.AddNested("PortMapping", err.(request.ErrInvalidParams)) 6111 } 6112 } 6113 6114 if invalidParams.Len() > 0 { 6115 return invalidParams 6116 } 6117 return nil 6118} 6119 6120// SetHealthCheck sets the HealthCheck field's value. 6121func (s *Listener) SetHealthCheck(v *HealthCheckPolicy) *Listener { 6122 s.HealthCheck = v 6123 return s 6124} 6125 6126// SetPortMapping sets the PortMapping field's value. 6127func (s *Listener) SetPortMapping(v *PortMapping) *Listener { 6128 s.PortMapping = v 6129 return s 6130} 6131 6132// An object representing the logging information for a virtual node. 6133type Logging struct { 6134 _ struct{} `type:"structure"` 6135 6136 // An object representing the access logging information for a virtual node. 6137 AccessLog *AccessLog `locationName:"accessLog" type:"structure"` 6138} 6139 6140// String returns the string representation 6141func (s Logging) String() string { 6142 return awsutil.Prettify(s) 6143} 6144 6145// GoString returns the string representation 6146func (s Logging) GoString() string { 6147 return s.String() 6148} 6149 6150// Validate inspects the fields of the type to determine if they are valid. 6151func (s *Logging) Validate() error { 6152 invalidParams := request.ErrInvalidParams{Context: "Logging"} 6153 if s.AccessLog != nil { 6154 if err := s.AccessLog.Validate(); err != nil { 6155 invalidParams.AddNested("AccessLog", err.(request.ErrInvalidParams)) 6156 } 6157 } 6158 6159 if invalidParams.Len() > 0 { 6160 return invalidParams 6161 } 6162 return nil 6163} 6164 6165// SetAccessLog sets the AccessLog field's value. 6166func (s *Logging) SetAccessLog(v *AccessLog) *Logging { 6167 s.AccessLog = v 6168 return s 6169} 6170 6171// The range of values to match on. The first character of the range is included 6172// in the range, though the last character is not. For example, if the range 6173// specified were 1-100, only values 1-99 would be matched. 6174type MatchRange struct { 6175 _ struct{} `type:"structure"` 6176 6177 // End is a required field 6178 End *int64 `locationName:"end" type:"long" required:"true"` 6179 6180 // Start is a required field 6181 Start *int64 `locationName:"start" type:"long" required:"true"` 6182} 6183 6184// String returns the string representation 6185func (s MatchRange) String() string { 6186 return awsutil.Prettify(s) 6187} 6188 6189// GoString returns the string representation 6190func (s MatchRange) GoString() string { 6191 return s.String() 6192} 6193 6194// Validate inspects the fields of the type to determine if they are valid. 6195func (s *MatchRange) Validate() error { 6196 invalidParams := request.ErrInvalidParams{Context: "MatchRange"} 6197 if s.End == nil { 6198 invalidParams.Add(request.NewErrParamRequired("End")) 6199 } 6200 if s.Start == nil { 6201 invalidParams.Add(request.NewErrParamRequired("Start")) 6202 } 6203 6204 if invalidParams.Len() > 0 { 6205 return invalidParams 6206 } 6207 return nil 6208} 6209 6210// SetEnd sets the End field's value. 6211func (s *MatchRange) SetEnd(v int64) *MatchRange { 6212 s.End = &v 6213 return s 6214} 6215 6216// SetStart sets the Start field's value. 6217func (s *MatchRange) SetStart(v int64) *MatchRange { 6218 s.Start = &v 6219 return s 6220} 6221 6222// An object representing a service mesh returned by a describe operation. 6223type MeshData struct { 6224 _ struct{} `type:"structure"` 6225 6226 // MeshName is a required field 6227 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 6228 6229 // An object representing metadata for a resource. 6230 // 6231 // Metadata is a required field 6232 Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` 6233 6234 // An object representing the specification of a service mesh. 6235 // 6236 // Spec is a required field 6237 Spec *MeshSpec `locationName:"spec" type:"structure" required:"true"` 6238 6239 // An object representing the status of a service mesh. 6240 // 6241 // Status is a required field 6242 Status *MeshStatus `locationName:"status" type:"structure" required:"true"` 6243} 6244 6245// String returns the string representation 6246func (s MeshData) String() string { 6247 return awsutil.Prettify(s) 6248} 6249 6250// GoString returns the string representation 6251func (s MeshData) GoString() string { 6252 return s.String() 6253} 6254 6255// SetMeshName sets the MeshName field's value. 6256func (s *MeshData) SetMeshName(v string) *MeshData { 6257 s.MeshName = &v 6258 return s 6259} 6260 6261// SetMetadata sets the Metadata field's value. 6262func (s *MeshData) SetMetadata(v *ResourceMetadata) *MeshData { 6263 s.Metadata = v 6264 return s 6265} 6266 6267// SetSpec sets the Spec field's value. 6268func (s *MeshData) SetSpec(v *MeshSpec) *MeshData { 6269 s.Spec = v 6270 return s 6271} 6272 6273// SetStatus sets the Status field's value. 6274func (s *MeshData) SetStatus(v *MeshStatus) *MeshData { 6275 s.Status = v 6276 return s 6277} 6278 6279// An object representing a service mesh returned by a list operation. 6280type MeshRef struct { 6281 _ struct{} `type:"structure"` 6282 6283 // Arn is a required field 6284 Arn *string `locationName:"arn" type:"string" required:"true"` 6285 6286 // MeshName is a required field 6287 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 6288} 6289 6290// String returns the string representation 6291func (s MeshRef) String() string { 6292 return awsutil.Prettify(s) 6293} 6294 6295// GoString returns the string representation 6296func (s MeshRef) GoString() string { 6297 return s.String() 6298} 6299 6300// SetArn sets the Arn field's value. 6301func (s *MeshRef) SetArn(v string) *MeshRef { 6302 s.Arn = &v 6303 return s 6304} 6305 6306// SetMeshName sets the MeshName field's value. 6307func (s *MeshRef) SetMeshName(v string) *MeshRef { 6308 s.MeshName = &v 6309 return s 6310} 6311 6312// An object representing the specification of a service mesh. 6313type MeshSpec struct { 6314 _ struct{} `type:"structure"` 6315 6316 // An object representing the egress filter rules for a service mesh. 6317 EgressFilter *EgressFilter `locationName:"egressFilter" type:"structure"` 6318} 6319 6320// String returns the string representation 6321func (s MeshSpec) String() string { 6322 return awsutil.Prettify(s) 6323} 6324 6325// GoString returns the string representation 6326func (s MeshSpec) GoString() string { 6327 return s.String() 6328} 6329 6330// Validate inspects the fields of the type to determine if they are valid. 6331func (s *MeshSpec) Validate() error { 6332 invalidParams := request.ErrInvalidParams{Context: "MeshSpec"} 6333 if s.EgressFilter != nil { 6334 if err := s.EgressFilter.Validate(); err != nil { 6335 invalidParams.AddNested("EgressFilter", err.(request.ErrInvalidParams)) 6336 } 6337 } 6338 6339 if invalidParams.Len() > 0 { 6340 return invalidParams 6341 } 6342 return nil 6343} 6344 6345// SetEgressFilter sets the EgressFilter field's value. 6346func (s *MeshSpec) SetEgressFilter(v *EgressFilter) *MeshSpec { 6347 s.EgressFilter = v 6348 return s 6349} 6350 6351// An object representing the status of a service mesh. 6352type MeshStatus struct { 6353 _ struct{} `type:"structure"` 6354 6355 Status *string `locationName:"status" type:"string" enum:"MeshStatusCode"` 6356} 6357 6358// String returns the string representation 6359func (s MeshStatus) String() string { 6360 return awsutil.Prettify(s) 6361} 6362 6363// GoString returns the string representation 6364func (s MeshStatus) GoString() string { 6365 return s.String() 6366} 6367 6368// SetStatus sets the Status field's value. 6369func (s *MeshStatus) SetStatus(v string) *MeshStatus { 6370 s.Status = &v 6371 return s 6372} 6373 6374// An object representing a virtual node or virtual router listener port mapping. 6375type PortMapping struct { 6376 _ struct{} `type:"structure"` 6377 6378 // Port is a required field 6379 Port *int64 `locationName:"port" min:"1" type:"integer" required:"true"` 6380 6381 // Protocol is a required field 6382 Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"PortProtocol"` 6383} 6384 6385// String returns the string representation 6386func (s PortMapping) String() string { 6387 return awsutil.Prettify(s) 6388} 6389 6390// GoString returns the string representation 6391func (s PortMapping) GoString() string { 6392 return s.String() 6393} 6394 6395// Validate inspects the fields of the type to determine if they are valid. 6396func (s *PortMapping) Validate() error { 6397 invalidParams := request.ErrInvalidParams{Context: "PortMapping"} 6398 if s.Port == nil { 6399 invalidParams.Add(request.NewErrParamRequired("Port")) 6400 } 6401 if s.Port != nil && *s.Port < 1 { 6402 invalidParams.Add(request.NewErrParamMinValue("Port", 1)) 6403 } 6404 if s.Protocol == nil { 6405 invalidParams.Add(request.NewErrParamRequired("Protocol")) 6406 } 6407 6408 if invalidParams.Len() > 0 { 6409 return invalidParams 6410 } 6411 return nil 6412} 6413 6414// SetPort sets the Port field's value. 6415func (s *PortMapping) SetPort(v int64) *PortMapping { 6416 s.Port = &v 6417 return s 6418} 6419 6420// SetProtocol sets the Protocol field's value. 6421func (s *PortMapping) SetProtocol(v string) *PortMapping { 6422 s.Protocol = &v 6423 return s 6424} 6425 6426// An object representing metadata for a resource. 6427type ResourceMetadata struct { 6428 _ struct{} `type:"structure"` 6429 6430 // Arn is a required field 6431 Arn *string `locationName:"arn" type:"string" required:"true"` 6432 6433 // CreatedAt is a required field 6434 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` 6435 6436 // LastUpdatedAt is a required field 6437 LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" required:"true"` 6438 6439 // Uid is a required field 6440 Uid *string `locationName:"uid" type:"string" required:"true"` 6441 6442 // Version is a required field 6443 Version *int64 `locationName:"version" type:"long" required:"true"` 6444} 6445 6446// String returns the string representation 6447func (s ResourceMetadata) String() string { 6448 return awsutil.Prettify(s) 6449} 6450 6451// GoString returns the string representation 6452func (s ResourceMetadata) GoString() string { 6453 return s.String() 6454} 6455 6456// SetArn sets the Arn field's value. 6457func (s *ResourceMetadata) SetArn(v string) *ResourceMetadata { 6458 s.Arn = &v 6459 return s 6460} 6461 6462// SetCreatedAt sets the CreatedAt field's value. 6463func (s *ResourceMetadata) SetCreatedAt(v time.Time) *ResourceMetadata { 6464 s.CreatedAt = &v 6465 return s 6466} 6467 6468// SetLastUpdatedAt sets the LastUpdatedAt field's value. 6469func (s *ResourceMetadata) SetLastUpdatedAt(v time.Time) *ResourceMetadata { 6470 s.LastUpdatedAt = &v 6471 return s 6472} 6473 6474// SetUid sets the Uid field's value. 6475func (s *ResourceMetadata) SetUid(v string) *ResourceMetadata { 6476 s.Uid = &v 6477 return s 6478} 6479 6480// SetVersion sets the Version field's value. 6481func (s *ResourceMetadata) SetVersion(v int64) *ResourceMetadata { 6482 s.Version = &v 6483 return s 6484} 6485 6486// An object representing a route returned by a describe operation. 6487type RouteData struct { 6488 _ struct{} `type:"structure"` 6489 6490 // MeshName is a required field 6491 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 6492 6493 // An object representing metadata for a resource. 6494 // 6495 // Metadata is a required field 6496 Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` 6497 6498 // RouteName is a required field 6499 RouteName *string `locationName:"routeName" min:"1" type:"string" required:"true"` 6500 6501 // An object representing the specification of a route. 6502 // 6503 // Spec is a required field 6504 Spec *RouteSpec `locationName:"spec" type:"structure" required:"true"` 6505 6506 // An object representing the current status of a route. 6507 // 6508 // Status is a required field 6509 Status *RouteStatus `locationName:"status" type:"structure" required:"true"` 6510 6511 // VirtualRouterName is a required field 6512 VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 6513} 6514 6515// String returns the string representation 6516func (s RouteData) String() string { 6517 return awsutil.Prettify(s) 6518} 6519 6520// GoString returns the string representation 6521func (s RouteData) GoString() string { 6522 return s.String() 6523} 6524 6525// SetMeshName sets the MeshName field's value. 6526func (s *RouteData) SetMeshName(v string) *RouteData { 6527 s.MeshName = &v 6528 return s 6529} 6530 6531// SetMetadata sets the Metadata field's value. 6532func (s *RouteData) SetMetadata(v *ResourceMetadata) *RouteData { 6533 s.Metadata = v 6534 return s 6535} 6536 6537// SetRouteName sets the RouteName field's value. 6538func (s *RouteData) SetRouteName(v string) *RouteData { 6539 s.RouteName = &v 6540 return s 6541} 6542 6543// SetSpec sets the Spec field's value. 6544func (s *RouteData) SetSpec(v *RouteSpec) *RouteData { 6545 s.Spec = v 6546 return s 6547} 6548 6549// SetStatus sets the Status field's value. 6550func (s *RouteData) SetStatus(v *RouteStatus) *RouteData { 6551 s.Status = v 6552 return s 6553} 6554 6555// SetVirtualRouterName sets the VirtualRouterName field's value. 6556func (s *RouteData) SetVirtualRouterName(v string) *RouteData { 6557 s.VirtualRouterName = &v 6558 return s 6559} 6560 6561// An object representing a route returned by a list operation. 6562type RouteRef struct { 6563 _ struct{} `type:"structure"` 6564 6565 // Arn is a required field 6566 Arn *string `locationName:"arn" type:"string" required:"true"` 6567 6568 // MeshName is a required field 6569 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 6570 6571 // RouteName is a required field 6572 RouteName *string `locationName:"routeName" min:"1" type:"string" required:"true"` 6573 6574 // VirtualRouterName is a required field 6575 VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 6576} 6577 6578// String returns the string representation 6579func (s RouteRef) String() string { 6580 return awsutil.Prettify(s) 6581} 6582 6583// GoString returns the string representation 6584func (s RouteRef) GoString() string { 6585 return s.String() 6586} 6587 6588// SetArn sets the Arn field's value. 6589func (s *RouteRef) SetArn(v string) *RouteRef { 6590 s.Arn = &v 6591 return s 6592} 6593 6594// SetMeshName sets the MeshName field's value. 6595func (s *RouteRef) SetMeshName(v string) *RouteRef { 6596 s.MeshName = &v 6597 return s 6598} 6599 6600// SetRouteName sets the RouteName field's value. 6601func (s *RouteRef) SetRouteName(v string) *RouteRef { 6602 s.RouteName = &v 6603 return s 6604} 6605 6606// SetVirtualRouterName sets the VirtualRouterName field's value. 6607func (s *RouteRef) SetVirtualRouterName(v string) *RouteRef { 6608 s.VirtualRouterName = &v 6609 return s 6610} 6611 6612// An object representing the specification of a route. 6613type RouteSpec struct { 6614 _ struct{} `type:"structure"` 6615 6616 // An object representing the HTTP routing specification for a route. 6617 HttpRoute *HttpRoute `locationName:"httpRoute" type:"structure"` 6618 6619 Priority *int64 `locationName:"priority" type:"integer"` 6620 6621 // An object representing the TCP routing specification for a route. 6622 TcpRoute *TcpRoute `locationName:"tcpRoute" type:"structure"` 6623} 6624 6625// String returns the string representation 6626func (s RouteSpec) String() string { 6627 return awsutil.Prettify(s) 6628} 6629 6630// GoString returns the string representation 6631func (s RouteSpec) GoString() string { 6632 return s.String() 6633} 6634 6635// Validate inspects the fields of the type to determine if they are valid. 6636func (s *RouteSpec) Validate() error { 6637 invalidParams := request.ErrInvalidParams{Context: "RouteSpec"} 6638 if s.HttpRoute != nil { 6639 if err := s.HttpRoute.Validate(); err != nil { 6640 invalidParams.AddNested("HttpRoute", err.(request.ErrInvalidParams)) 6641 } 6642 } 6643 if s.TcpRoute != nil { 6644 if err := s.TcpRoute.Validate(); err != nil { 6645 invalidParams.AddNested("TcpRoute", err.(request.ErrInvalidParams)) 6646 } 6647 } 6648 6649 if invalidParams.Len() > 0 { 6650 return invalidParams 6651 } 6652 return nil 6653} 6654 6655// SetHttpRoute sets the HttpRoute field's value. 6656func (s *RouteSpec) SetHttpRoute(v *HttpRoute) *RouteSpec { 6657 s.HttpRoute = v 6658 return s 6659} 6660 6661// SetPriority sets the Priority field's value. 6662func (s *RouteSpec) SetPriority(v int64) *RouteSpec { 6663 s.Priority = &v 6664 return s 6665} 6666 6667// SetTcpRoute sets the TcpRoute field's value. 6668func (s *RouteSpec) SetTcpRoute(v *TcpRoute) *RouteSpec { 6669 s.TcpRoute = v 6670 return s 6671} 6672 6673// An object representing the current status of a route. 6674type RouteStatus struct { 6675 _ struct{} `type:"structure"` 6676 6677 // Status is a required field 6678 Status *string `locationName:"status" type:"string" required:"true" enum:"RouteStatusCode"` 6679} 6680 6681// String returns the string representation 6682func (s RouteStatus) String() string { 6683 return awsutil.Prettify(s) 6684} 6685 6686// GoString returns the string representation 6687func (s RouteStatus) GoString() string { 6688 return s.String() 6689} 6690 6691// SetStatus sets the Status field's value. 6692func (s *RouteStatus) SetStatus(v string) *RouteStatus { 6693 s.Status = &v 6694 return s 6695} 6696 6697// An object representing the service discovery information for a virtual node. 6698type ServiceDiscovery struct { 6699 _ struct{} `type:"structure"` 6700 6701 // An object representing the AWS Cloud Map service discovery information for 6702 // your virtual node. 6703 AwsCloudMap *AwsCloudMapServiceDiscovery `locationName:"awsCloudMap" type:"structure"` 6704 6705 // An object representing the DNS service discovery information for your virtual 6706 // node. 6707 Dns *DnsServiceDiscovery `locationName:"dns" type:"structure"` 6708} 6709 6710// String returns the string representation 6711func (s ServiceDiscovery) String() string { 6712 return awsutil.Prettify(s) 6713} 6714 6715// GoString returns the string representation 6716func (s ServiceDiscovery) GoString() string { 6717 return s.String() 6718} 6719 6720// Validate inspects the fields of the type to determine if they are valid. 6721func (s *ServiceDiscovery) Validate() error { 6722 invalidParams := request.ErrInvalidParams{Context: "ServiceDiscovery"} 6723 if s.AwsCloudMap != nil { 6724 if err := s.AwsCloudMap.Validate(); err != nil { 6725 invalidParams.AddNested("AwsCloudMap", err.(request.ErrInvalidParams)) 6726 } 6727 } 6728 if s.Dns != nil { 6729 if err := s.Dns.Validate(); err != nil { 6730 invalidParams.AddNested("Dns", err.(request.ErrInvalidParams)) 6731 } 6732 } 6733 6734 if invalidParams.Len() > 0 { 6735 return invalidParams 6736 } 6737 return nil 6738} 6739 6740// SetAwsCloudMap sets the AwsCloudMap field's value. 6741func (s *ServiceDiscovery) SetAwsCloudMap(v *AwsCloudMapServiceDiscovery) *ServiceDiscovery { 6742 s.AwsCloudMap = v 6743 return s 6744} 6745 6746// SetDns sets the Dns field's value. 6747func (s *ServiceDiscovery) SetDns(v *DnsServiceDiscovery) *ServiceDiscovery { 6748 s.Dns = v 6749 return s 6750} 6751 6752// Optional metadata that you apply to a resource to assist with categorization 6753// and organization. Each tag consists of a key and an optional value, both 6754// of which you define. Tag keys can have a maximum character length of 128 6755// characters, and tag values can have a maximum length of 256 characters. 6756type TagRef struct { 6757 _ struct{} `type:"structure"` 6758 6759 // Key is a required field 6760 Key *string `locationName:"key" min:"1" type:"string" required:"true"` 6761 6762 Value *string `locationName:"value" type:"string"` 6763} 6764 6765// String returns the string representation 6766func (s TagRef) String() string { 6767 return awsutil.Prettify(s) 6768} 6769 6770// GoString returns the string representation 6771func (s TagRef) GoString() string { 6772 return s.String() 6773} 6774 6775// Validate inspects the fields of the type to determine if they are valid. 6776func (s *TagRef) Validate() error { 6777 invalidParams := request.ErrInvalidParams{Context: "TagRef"} 6778 if s.Key == nil { 6779 invalidParams.Add(request.NewErrParamRequired("Key")) 6780 } 6781 if s.Key != nil && len(*s.Key) < 1 { 6782 invalidParams.Add(request.NewErrParamMinLen("Key", 1)) 6783 } 6784 6785 if invalidParams.Len() > 0 { 6786 return invalidParams 6787 } 6788 return nil 6789} 6790 6791// SetKey sets the Key field's value. 6792func (s *TagRef) SetKey(v string) *TagRef { 6793 s.Key = &v 6794 return s 6795} 6796 6797// SetValue sets the Value field's value. 6798func (s *TagRef) SetValue(v string) *TagRef { 6799 s.Value = &v 6800 return s 6801} 6802 6803type TagResourceInput struct { 6804 _ struct{} `type:"structure"` 6805 6806 // ResourceArn is a required field 6807 ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"` 6808 6809 // Tags is a required field 6810 Tags []*TagRef `locationName:"tags" type:"list" required:"true"` 6811} 6812 6813// String returns the string representation 6814func (s TagResourceInput) String() string { 6815 return awsutil.Prettify(s) 6816} 6817 6818// GoString returns the string representation 6819func (s TagResourceInput) GoString() string { 6820 return s.String() 6821} 6822 6823// Validate inspects the fields of the type to determine if they are valid. 6824func (s *TagResourceInput) Validate() error { 6825 invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} 6826 if s.ResourceArn == nil { 6827 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 6828 } 6829 if s.Tags == nil { 6830 invalidParams.Add(request.NewErrParamRequired("Tags")) 6831 } 6832 if s.Tags != nil { 6833 for i, v := range s.Tags { 6834 if v == nil { 6835 continue 6836 } 6837 if err := v.Validate(); err != nil { 6838 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 6839 } 6840 } 6841 } 6842 6843 if invalidParams.Len() > 0 { 6844 return invalidParams 6845 } 6846 return nil 6847} 6848 6849// SetResourceArn sets the ResourceArn field's value. 6850func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { 6851 s.ResourceArn = &v 6852 return s 6853} 6854 6855// SetTags sets the Tags field's value. 6856func (s *TagResourceInput) SetTags(v []*TagRef) *TagResourceInput { 6857 s.Tags = v 6858 return s 6859} 6860 6861type TagResourceOutput struct { 6862 _ struct{} `type:"structure"` 6863} 6864 6865// String returns the string representation 6866func (s TagResourceOutput) String() string { 6867 return awsutil.Prettify(s) 6868} 6869 6870// GoString returns the string representation 6871func (s TagResourceOutput) GoString() string { 6872 return s.String() 6873} 6874 6875// An object representing the TCP routing specification for a route. 6876type TcpRoute struct { 6877 _ struct{} `type:"structure"` 6878 6879 // An object representing the traffic distribution requirements for matched 6880 // TCP requests. 6881 // 6882 // Action is a required field 6883 Action *TcpRouteAction `locationName:"action" type:"structure" required:"true"` 6884} 6885 6886// String returns the string representation 6887func (s TcpRoute) String() string { 6888 return awsutil.Prettify(s) 6889} 6890 6891// GoString returns the string representation 6892func (s TcpRoute) GoString() string { 6893 return s.String() 6894} 6895 6896// Validate inspects the fields of the type to determine if they are valid. 6897func (s *TcpRoute) Validate() error { 6898 invalidParams := request.ErrInvalidParams{Context: "TcpRoute"} 6899 if s.Action == nil { 6900 invalidParams.Add(request.NewErrParamRequired("Action")) 6901 } 6902 if s.Action != nil { 6903 if err := s.Action.Validate(); err != nil { 6904 invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) 6905 } 6906 } 6907 6908 if invalidParams.Len() > 0 { 6909 return invalidParams 6910 } 6911 return nil 6912} 6913 6914// SetAction sets the Action field's value. 6915func (s *TcpRoute) SetAction(v *TcpRouteAction) *TcpRoute { 6916 s.Action = v 6917 return s 6918} 6919 6920// An object representing the traffic distribution requirements for matched 6921// TCP requests. 6922type TcpRouteAction struct { 6923 _ struct{} `type:"structure"` 6924 6925 // WeightedTargets is a required field 6926 WeightedTargets []*WeightedTarget `locationName:"weightedTargets" min:"1" type:"list" required:"true"` 6927} 6928 6929// String returns the string representation 6930func (s TcpRouteAction) String() string { 6931 return awsutil.Prettify(s) 6932} 6933 6934// GoString returns the string representation 6935func (s TcpRouteAction) GoString() string { 6936 return s.String() 6937} 6938 6939// Validate inspects the fields of the type to determine if they are valid. 6940func (s *TcpRouteAction) Validate() error { 6941 invalidParams := request.ErrInvalidParams{Context: "TcpRouteAction"} 6942 if s.WeightedTargets == nil { 6943 invalidParams.Add(request.NewErrParamRequired("WeightedTargets")) 6944 } 6945 if s.WeightedTargets != nil && len(s.WeightedTargets) < 1 { 6946 invalidParams.Add(request.NewErrParamMinLen("WeightedTargets", 1)) 6947 } 6948 if s.WeightedTargets != nil { 6949 for i, v := range s.WeightedTargets { 6950 if v == nil { 6951 continue 6952 } 6953 if err := v.Validate(); err != nil { 6954 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WeightedTargets", i), err.(request.ErrInvalidParams)) 6955 } 6956 } 6957 } 6958 6959 if invalidParams.Len() > 0 { 6960 return invalidParams 6961 } 6962 return nil 6963} 6964 6965// SetWeightedTargets sets the WeightedTargets field's value. 6966func (s *TcpRouteAction) SetWeightedTargets(v []*WeightedTarget) *TcpRouteAction { 6967 s.WeightedTargets = v 6968 return s 6969} 6970 6971type UntagResourceInput struct { 6972 _ struct{} `type:"structure"` 6973 6974 // ResourceArn is a required field 6975 ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"` 6976 6977 // TagKeys is a required field 6978 TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"` 6979} 6980 6981// String returns the string representation 6982func (s UntagResourceInput) String() string { 6983 return awsutil.Prettify(s) 6984} 6985 6986// GoString returns the string representation 6987func (s UntagResourceInput) GoString() string { 6988 return s.String() 6989} 6990 6991// Validate inspects the fields of the type to determine if they are valid. 6992func (s *UntagResourceInput) Validate() error { 6993 invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} 6994 if s.ResourceArn == nil { 6995 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 6996 } 6997 if s.TagKeys == nil { 6998 invalidParams.Add(request.NewErrParamRequired("TagKeys")) 6999 } 7000 7001 if invalidParams.Len() > 0 { 7002 return invalidParams 7003 } 7004 return nil 7005} 7006 7007// SetResourceArn sets the ResourceArn field's value. 7008func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { 7009 s.ResourceArn = &v 7010 return s 7011} 7012 7013// SetTagKeys sets the TagKeys field's value. 7014func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { 7015 s.TagKeys = v 7016 return s 7017} 7018 7019type UntagResourceOutput struct { 7020 _ struct{} `type:"structure"` 7021} 7022 7023// String returns the string representation 7024func (s UntagResourceOutput) String() string { 7025 return awsutil.Prettify(s) 7026} 7027 7028// GoString returns the string representation 7029func (s UntagResourceOutput) GoString() string { 7030 return s.String() 7031} 7032 7033type UpdateMeshInput struct { 7034 _ struct{} `type:"structure"` 7035 7036 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 7037 7038 // MeshName is a required field 7039 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 7040 7041 // An object representing the specification of a service mesh. 7042 Spec *MeshSpec `locationName:"spec" type:"structure"` 7043} 7044 7045// String returns the string representation 7046func (s UpdateMeshInput) String() string { 7047 return awsutil.Prettify(s) 7048} 7049 7050// GoString returns the string representation 7051func (s UpdateMeshInput) GoString() string { 7052 return s.String() 7053} 7054 7055// Validate inspects the fields of the type to determine if they are valid. 7056func (s *UpdateMeshInput) Validate() error { 7057 invalidParams := request.ErrInvalidParams{Context: "UpdateMeshInput"} 7058 if s.MeshName == nil { 7059 invalidParams.Add(request.NewErrParamRequired("MeshName")) 7060 } 7061 if s.MeshName != nil && len(*s.MeshName) < 1 { 7062 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 7063 } 7064 if s.Spec != nil { 7065 if err := s.Spec.Validate(); err != nil { 7066 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 7067 } 7068 } 7069 7070 if invalidParams.Len() > 0 { 7071 return invalidParams 7072 } 7073 return nil 7074} 7075 7076// SetClientToken sets the ClientToken field's value. 7077func (s *UpdateMeshInput) SetClientToken(v string) *UpdateMeshInput { 7078 s.ClientToken = &v 7079 return s 7080} 7081 7082// SetMeshName sets the MeshName field's value. 7083func (s *UpdateMeshInput) SetMeshName(v string) *UpdateMeshInput { 7084 s.MeshName = &v 7085 return s 7086} 7087 7088// SetSpec sets the Spec field's value. 7089func (s *UpdateMeshInput) SetSpec(v *MeshSpec) *UpdateMeshInput { 7090 s.Spec = v 7091 return s 7092} 7093 7094type UpdateMeshOutput struct { 7095 _ struct{} `type:"structure" payload:"Mesh"` 7096 7097 // An object representing a service mesh returned by a describe operation. 7098 // 7099 // Mesh is a required field 7100 Mesh *MeshData `locationName:"mesh" type:"structure" required:"true"` 7101} 7102 7103// String returns the string representation 7104func (s UpdateMeshOutput) String() string { 7105 return awsutil.Prettify(s) 7106} 7107 7108// GoString returns the string representation 7109func (s UpdateMeshOutput) GoString() string { 7110 return s.String() 7111} 7112 7113// SetMesh sets the Mesh field's value. 7114func (s *UpdateMeshOutput) SetMesh(v *MeshData) *UpdateMeshOutput { 7115 s.Mesh = v 7116 return s 7117} 7118 7119type UpdateRouteInput struct { 7120 _ struct{} `type:"structure"` 7121 7122 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 7123 7124 // MeshName is a required field 7125 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 7126 7127 // RouteName is a required field 7128 RouteName *string `location:"uri" locationName:"routeName" min:"1" type:"string" required:"true"` 7129 7130 // An object representing the specification of a route. 7131 // 7132 // Spec is a required field 7133 Spec *RouteSpec `locationName:"spec" type:"structure" required:"true"` 7134 7135 // VirtualRouterName is a required field 7136 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 7137} 7138 7139// String returns the string representation 7140func (s UpdateRouteInput) String() string { 7141 return awsutil.Prettify(s) 7142} 7143 7144// GoString returns the string representation 7145func (s UpdateRouteInput) GoString() string { 7146 return s.String() 7147} 7148 7149// Validate inspects the fields of the type to determine if they are valid. 7150func (s *UpdateRouteInput) Validate() error { 7151 invalidParams := request.ErrInvalidParams{Context: "UpdateRouteInput"} 7152 if s.MeshName == nil { 7153 invalidParams.Add(request.NewErrParamRequired("MeshName")) 7154 } 7155 if s.MeshName != nil && len(*s.MeshName) < 1 { 7156 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 7157 } 7158 if s.RouteName == nil { 7159 invalidParams.Add(request.NewErrParamRequired("RouteName")) 7160 } 7161 if s.RouteName != nil && len(*s.RouteName) < 1 { 7162 invalidParams.Add(request.NewErrParamMinLen("RouteName", 1)) 7163 } 7164 if s.Spec == nil { 7165 invalidParams.Add(request.NewErrParamRequired("Spec")) 7166 } 7167 if s.VirtualRouterName == nil { 7168 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 7169 } 7170 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 7171 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 7172 } 7173 if s.Spec != nil { 7174 if err := s.Spec.Validate(); err != nil { 7175 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 7176 } 7177 } 7178 7179 if invalidParams.Len() > 0 { 7180 return invalidParams 7181 } 7182 return nil 7183} 7184 7185// SetClientToken sets the ClientToken field's value. 7186func (s *UpdateRouteInput) SetClientToken(v string) *UpdateRouteInput { 7187 s.ClientToken = &v 7188 return s 7189} 7190 7191// SetMeshName sets the MeshName field's value. 7192func (s *UpdateRouteInput) SetMeshName(v string) *UpdateRouteInput { 7193 s.MeshName = &v 7194 return s 7195} 7196 7197// SetRouteName sets the RouteName field's value. 7198func (s *UpdateRouteInput) SetRouteName(v string) *UpdateRouteInput { 7199 s.RouteName = &v 7200 return s 7201} 7202 7203// SetSpec sets the Spec field's value. 7204func (s *UpdateRouteInput) SetSpec(v *RouteSpec) *UpdateRouteInput { 7205 s.Spec = v 7206 return s 7207} 7208 7209// SetVirtualRouterName sets the VirtualRouterName field's value. 7210func (s *UpdateRouteInput) SetVirtualRouterName(v string) *UpdateRouteInput { 7211 s.VirtualRouterName = &v 7212 return s 7213} 7214 7215type UpdateRouteOutput struct { 7216 _ struct{} `type:"structure" payload:"Route"` 7217 7218 // An object representing a route returned by a describe operation. 7219 // 7220 // Route is a required field 7221 Route *RouteData `locationName:"route" type:"structure" required:"true"` 7222} 7223 7224// String returns the string representation 7225func (s UpdateRouteOutput) String() string { 7226 return awsutil.Prettify(s) 7227} 7228 7229// GoString returns the string representation 7230func (s UpdateRouteOutput) GoString() string { 7231 return s.String() 7232} 7233 7234// SetRoute sets the Route field's value. 7235func (s *UpdateRouteOutput) SetRoute(v *RouteData) *UpdateRouteOutput { 7236 s.Route = v 7237 return s 7238} 7239 7240type UpdateVirtualNodeInput struct { 7241 _ struct{} `type:"structure"` 7242 7243 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 7244 7245 // MeshName is a required field 7246 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 7247 7248 // An object representing the specification of a virtual node. 7249 // 7250 // Spec is a required field 7251 Spec *VirtualNodeSpec `locationName:"spec" type:"structure" required:"true"` 7252 7253 // VirtualNodeName is a required field 7254 VirtualNodeName *string `location:"uri" locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 7255} 7256 7257// String returns the string representation 7258func (s UpdateVirtualNodeInput) String() string { 7259 return awsutil.Prettify(s) 7260} 7261 7262// GoString returns the string representation 7263func (s UpdateVirtualNodeInput) GoString() string { 7264 return s.String() 7265} 7266 7267// Validate inspects the fields of the type to determine if they are valid. 7268func (s *UpdateVirtualNodeInput) Validate() error { 7269 invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualNodeInput"} 7270 if s.MeshName == nil { 7271 invalidParams.Add(request.NewErrParamRequired("MeshName")) 7272 } 7273 if s.MeshName != nil && len(*s.MeshName) < 1 { 7274 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 7275 } 7276 if s.Spec == nil { 7277 invalidParams.Add(request.NewErrParamRequired("Spec")) 7278 } 7279 if s.VirtualNodeName == nil { 7280 invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) 7281 } 7282 if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { 7283 invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) 7284 } 7285 if s.Spec != nil { 7286 if err := s.Spec.Validate(); err != nil { 7287 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 7288 } 7289 } 7290 7291 if invalidParams.Len() > 0 { 7292 return invalidParams 7293 } 7294 return nil 7295} 7296 7297// SetClientToken sets the ClientToken field's value. 7298func (s *UpdateVirtualNodeInput) SetClientToken(v string) *UpdateVirtualNodeInput { 7299 s.ClientToken = &v 7300 return s 7301} 7302 7303// SetMeshName sets the MeshName field's value. 7304func (s *UpdateVirtualNodeInput) SetMeshName(v string) *UpdateVirtualNodeInput { 7305 s.MeshName = &v 7306 return s 7307} 7308 7309// SetSpec sets the Spec field's value. 7310func (s *UpdateVirtualNodeInput) SetSpec(v *VirtualNodeSpec) *UpdateVirtualNodeInput { 7311 s.Spec = v 7312 return s 7313} 7314 7315// SetVirtualNodeName sets the VirtualNodeName field's value. 7316func (s *UpdateVirtualNodeInput) SetVirtualNodeName(v string) *UpdateVirtualNodeInput { 7317 s.VirtualNodeName = &v 7318 return s 7319} 7320 7321type UpdateVirtualNodeOutput struct { 7322 _ struct{} `type:"structure" payload:"VirtualNode"` 7323 7324 // An object representing a virtual node returned by a describe operation. 7325 // 7326 // VirtualNode is a required field 7327 VirtualNode *VirtualNodeData `locationName:"virtualNode" type:"structure" required:"true"` 7328} 7329 7330// String returns the string representation 7331func (s UpdateVirtualNodeOutput) String() string { 7332 return awsutil.Prettify(s) 7333} 7334 7335// GoString returns the string representation 7336func (s UpdateVirtualNodeOutput) GoString() string { 7337 return s.String() 7338} 7339 7340// SetVirtualNode sets the VirtualNode field's value. 7341func (s *UpdateVirtualNodeOutput) SetVirtualNode(v *VirtualNodeData) *UpdateVirtualNodeOutput { 7342 s.VirtualNode = v 7343 return s 7344} 7345 7346type UpdateVirtualRouterInput struct { 7347 _ struct{} `type:"structure"` 7348 7349 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 7350 7351 // MeshName is a required field 7352 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 7353 7354 // An object representing the specification of a virtual router. 7355 // 7356 // Spec is a required field 7357 Spec *VirtualRouterSpec `locationName:"spec" type:"structure" required:"true"` 7358 7359 // VirtualRouterName is a required field 7360 VirtualRouterName *string `location:"uri" locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 7361} 7362 7363// String returns the string representation 7364func (s UpdateVirtualRouterInput) String() string { 7365 return awsutil.Prettify(s) 7366} 7367 7368// GoString returns the string representation 7369func (s UpdateVirtualRouterInput) GoString() string { 7370 return s.String() 7371} 7372 7373// Validate inspects the fields of the type to determine if they are valid. 7374func (s *UpdateVirtualRouterInput) Validate() error { 7375 invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualRouterInput"} 7376 if s.MeshName == nil { 7377 invalidParams.Add(request.NewErrParamRequired("MeshName")) 7378 } 7379 if s.MeshName != nil && len(*s.MeshName) < 1 { 7380 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 7381 } 7382 if s.Spec == nil { 7383 invalidParams.Add(request.NewErrParamRequired("Spec")) 7384 } 7385 if s.VirtualRouterName == nil { 7386 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 7387 } 7388 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 7389 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 7390 } 7391 if s.Spec != nil { 7392 if err := s.Spec.Validate(); err != nil { 7393 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 7394 } 7395 } 7396 7397 if invalidParams.Len() > 0 { 7398 return invalidParams 7399 } 7400 return nil 7401} 7402 7403// SetClientToken sets the ClientToken field's value. 7404func (s *UpdateVirtualRouterInput) SetClientToken(v string) *UpdateVirtualRouterInput { 7405 s.ClientToken = &v 7406 return s 7407} 7408 7409// SetMeshName sets the MeshName field's value. 7410func (s *UpdateVirtualRouterInput) SetMeshName(v string) *UpdateVirtualRouterInput { 7411 s.MeshName = &v 7412 return s 7413} 7414 7415// SetSpec sets the Spec field's value. 7416func (s *UpdateVirtualRouterInput) SetSpec(v *VirtualRouterSpec) *UpdateVirtualRouterInput { 7417 s.Spec = v 7418 return s 7419} 7420 7421// SetVirtualRouterName sets the VirtualRouterName field's value. 7422func (s *UpdateVirtualRouterInput) SetVirtualRouterName(v string) *UpdateVirtualRouterInput { 7423 s.VirtualRouterName = &v 7424 return s 7425} 7426 7427type UpdateVirtualRouterOutput struct { 7428 _ struct{} `type:"structure" payload:"VirtualRouter"` 7429 7430 // An object representing a virtual router returned by a describe operation. 7431 // 7432 // VirtualRouter is a required field 7433 VirtualRouter *VirtualRouterData `locationName:"virtualRouter" type:"structure" required:"true"` 7434} 7435 7436// String returns the string representation 7437func (s UpdateVirtualRouterOutput) String() string { 7438 return awsutil.Prettify(s) 7439} 7440 7441// GoString returns the string representation 7442func (s UpdateVirtualRouterOutput) GoString() string { 7443 return s.String() 7444} 7445 7446// SetVirtualRouter sets the VirtualRouter field's value. 7447func (s *UpdateVirtualRouterOutput) SetVirtualRouter(v *VirtualRouterData) *UpdateVirtualRouterOutput { 7448 s.VirtualRouter = v 7449 return s 7450} 7451 7452type UpdateVirtualServiceInput struct { 7453 _ struct{} `type:"structure"` 7454 7455 ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` 7456 7457 // MeshName is a required field 7458 MeshName *string `location:"uri" locationName:"meshName" min:"1" type:"string" required:"true"` 7459 7460 // An object representing the specification of a virtual service. 7461 // 7462 // Spec is a required field 7463 Spec *VirtualServiceSpec `locationName:"spec" type:"structure" required:"true"` 7464 7465 // VirtualServiceName is a required field 7466 VirtualServiceName *string `location:"uri" locationName:"virtualServiceName" type:"string" required:"true"` 7467} 7468 7469// String returns the string representation 7470func (s UpdateVirtualServiceInput) String() string { 7471 return awsutil.Prettify(s) 7472} 7473 7474// GoString returns the string representation 7475func (s UpdateVirtualServiceInput) GoString() string { 7476 return s.String() 7477} 7478 7479// Validate inspects the fields of the type to determine if they are valid. 7480func (s *UpdateVirtualServiceInput) Validate() error { 7481 invalidParams := request.ErrInvalidParams{Context: "UpdateVirtualServiceInput"} 7482 if s.MeshName == nil { 7483 invalidParams.Add(request.NewErrParamRequired("MeshName")) 7484 } 7485 if s.MeshName != nil && len(*s.MeshName) < 1 { 7486 invalidParams.Add(request.NewErrParamMinLen("MeshName", 1)) 7487 } 7488 if s.Spec == nil { 7489 invalidParams.Add(request.NewErrParamRequired("Spec")) 7490 } 7491 if s.VirtualServiceName == nil { 7492 invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) 7493 } 7494 if s.VirtualServiceName != nil && len(*s.VirtualServiceName) < 1 { 7495 invalidParams.Add(request.NewErrParamMinLen("VirtualServiceName", 1)) 7496 } 7497 if s.Spec != nil { 7498 if err := s.Spec.Validate(); err != nil { 7499 invalidParams.AddNested("Spec", err.(request.ErrInvalidParams)) 7500 } 7501 } 7502 7503 if invalidParams.Len() > 0 { 7504 return invalidParams 7505 } 7506 return nil 7507} 7508 7509// SetClientToken sets the ClientToken field's value. 7510func (s *UpdateVirtualServiceInput) SetClientToken(v string) *UpdateVirtualServiceInput { 7511 s.ClientToken = &v 7512 return s 7513} 7514 7515// SetMeshName sets the MeshName field's value. 7516func (s *UpdateVirtualServiceInput) SetMeshName(v string) *UpdateVirtualServiceInput { 7517 s.MeshName = &v 7518 return s 7519} 7520 7521// SetSpec sets the Spec field's value. 7522func (s *UpdateVirtualServiceInput) SetSpec(v *VirtualServiceSpec) *UpdateVirtualServiceInput { 7523 s.Spec = v 7524 return s 7525} 7526 7527// SetVirtualServiceName sets the VirtualServiceName field's value. 7528func (s *UpdateVirtualServiceInput) SetVirtualServiceName(v string) *UpdateVirtualServiceInput { 7529 s.VirtualServiceName = &v 7530 return s 7531} 7532 7533type UpdateVirtualServiceOutput struct { 7534 _ struct{} `type:"structure" payload:"VirtualService"` 7535 7536 // An object representing a virtual service returned by a describe operation. 7537 // 7538 // VirtualService is a required field 7539 VirtualService *VirtualServiceData `locationName:"virtualService" type:"structure" required:"true"` 7540} 7541 7542// String returns the string representation 7543func (s UpdateVirtualServiceOutput) String() string { 7544 return awsutil.Prettify(s) 7545} 7546 7547// GoString returns the string representation 7548func (s UpdateVirtualServiceOutput) GoString() string { 7549 return s.String() 7550} 7551 7552// SetVirtualService sets the VirtualService field's value. 7553func (s *UpdateVirtualServiceOutput) SetVirtualService(v *VirtualServiceData) *UpdateVirtualServiceOutput { 7554 s.VirtualService = v 7555 return s 7556} 7557 7558// An object representing a virtual node returned by a describe operation. 7559type VirtualNodeData struct { 7560 _ struct{} `type:"structure"` 7561 7562 // MeshName is a required field 7563 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 7564 7565 // An object representing metadata for a resource. 7566 // 7567 // Metadata is a required field 7568 Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` 7569 7570 // An object representing the specification of a virtual node. 7571 // 7572 // Spec is a required field 7573 Spec *VirtualNodeSpec `locationName:"spec" type:"structure" required:"true"` 7574 7575 // An object representing the current status of the virtual node. 7576 // 7577 // Status is a required field 7578 Status *VirtualNodeStatus `locationName:"status" type:"structure" required:"true"` 7579 7580 // VirtualNodeName is a required field 7581 VirtualNodeName *string `locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 7582} 7583 7584// String returns the string representation 7585func (s VirtualNodeData) String() string { 7586 return awsutil.Prettify(s) 7587} 7588 7589// GoString returns the string representation 7590func (s VirtualNodeData) GoString() string { 7591 return s.String() 7592} 7593 7594// SetMeshName sets the MeshName field's value. 7595func (s *VirtualNodeData) SetMeshName(v string) *VirtualNodeData { 7596 s.MeshName = &v 7597 return s 7598} 7599 7600// SetMetadata sets the Metadata field's value. 7601func (s *VirtualNodeData) SetMetadata(v *ResourceMetadata) *VirtualNodeData { 7602 s.Metadata = v 7603 return s 7604} 7605 7606// SetSpec sets the Spec field's value. 7607func (s *VirtualNodeData) SetSpec(v *VirtualNodeSpec) *VirtualNodeData { 7608 s.Spec = v 7609 return s 7610} 7611 7612// SetStatus sets the Status field's value. 7613func (s *VirtualNodeData) SetStatus(v *VirtualNodeStatus) *VirtualNodeData { 7614 s.Status = v 7615 return s 7616} 7617 7618// SetVirtualNodeName sets the VirtualNodeName field's value. 7619func (s *VirtualNodeData) SetVirtualNodeName(v string) *VirtualNodeData { 7620 s.VirtualNodeName = &v 7621 return s 7622} 7623 7624// An object representing a virtual node returned by a list operation. 7625type VirtualNodeRef struct { 7626 _ struct{} `type:"structure"` 7627 7628 // Arn is a required field 7629 Arn *string `locationName:"arn" type:"string" required:"true"` 7630 7631 // MeshName is a required field 7632 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 7633 7634 // VirtualNodeName is a required field 7635 VirtualNodeName *string `locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 7636} 7637 7638// String returns the string representation 7639func (s VirtualNodeRef) String() string { 7640 return awsutil.Prettify(s) 7641} 7642 7643// GoString returns the string representation 7644func (s VirtualNodeRef) GoString() string { 7645 return s.String() 7646} 7647 7648// SetArn sets the Arn field's value. 7649func (s *VirtualNodeRef) SetArn(v string) *VirtualNodeRef { 7650 s.Arn = &v 7651 return s 7652} 7653 7654// SetMeshName sets the MeshName field's value. 7655func (s *VirtualNodeRef) SetMeshName(v string) *VirtualNodeRef { 7656 s.MeshName = &v 7657 return s 7658} 7659 7660// SetVirtualNodeName sets the VirtualNodeName field's value. 7661func (s *VirtualNodeRef) SetVirtualNodeName(v string) *VirtualNodeRef { 7662 s.VirtualNodeName = &v 7663 return s 7664} 7665 7666// An object representing a virtual node service provider. 7667type VirtualNodeServiceProvider struct { 7668 _ struct{} `type:"structure"` 7669 7670 // VirtualNodeName is a required field 7671 VirtualNodeName *string `locationName:"virtualNodeName" min:"1" type:"string" required:"true"` 7672} 7673 7674// String returns the string representation 7675func (s VirtualNodeServiceProvider) String() string { 7676 return awsutil.Prettify(s) 7677} 7678 7679// GoString returns the string representation 7680func (s VirtualNodeServiceProvider) GoString() string { 7681 return s.String() 7682} 7683 7684// Validate inspects the fields of the type to determine if they are valid. 7685func (s *VirtualNodeServiceProvider) Validate() error { 7686 invalidParams := request.ErrInvalidParams{Context: "VirtualNodeServiceProvider"} 7687 if s.VirtualNodeName == nil { 7688 invalidParams.Add(request.NewErrParamRequired("VirtualNodeName")) 7689 } 7690 if s.VirtualNodeName != nil && len(*s.VirtualNodeName) < 1 { 7691 invalidParams.Add(request.NewErrParamMinLen("VirtualNodeName", 1)) 7692 } 7693 7694 if invalidParams.Len() > 0 { 7695 return invalidParams 7696 } 7697 return nil 7698} 7699 7700// SetVirtualNodeName sets the VirtualNodeName field's value. 7701func (s *VirtualNodeServiceProvider) SetVirtualNodeName(v string) *VirtualNodeServiceProvider { 7702 s.VirtualNodeName = &v 7703 return s 7704} 7705 7706// An object representing the specification of a virtual node. 7707type VirtualNodeSpec struct { 7708 _ struct{} `type:"structure"` 7709 7710 Backends []*Backend `locationName:"backends" type:"list"` 7711 7712 Listeners []*Listener `locationName:"listeners" type:"list"` 7713 7714 // An object representing the logging information for a virtual node. 7715 Logging *Logging `locationName:"logging" type:"structure"` 7716 7717 // An object representing the service discovery information for a virtual node. 7718 ServiceDiscovery *ServiceDiscovery `locationName:"serviceDiscovery" type:"structure"` 7719} 7720 7721// String returns the string representation 7722func (s VirtualNodeSpec) String() string { 7723 return awsutil.Prettify(s) 7724} 7725 7726// GoString returns the string representation 7727func (s VirtualNodeSpec) GoString() string { 7728 return s.String() 7729} 7730 7731// Validate inspects the fields of the type to determine if they are valid. 7732func (s *VirtualNodeSpec) Validate() error { 7733 invalidParams := request.ErrInvalidParams{Context: "VirtualNodeSpec"} 7734 if s.Backends != nil { 7735 for i, v := range s.Backends { 7736 if v == nil { 7737 continue 7738 } 7739 if err := v.Validate(); err != nil { 7740 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Backends", i), err.(request.ErrInvalidParams)) 7741 } 7742 } 7743 } 7744 if s.Listeners != nil { 7745 for i, v := range s.Listeners { 7746 if v == nil { 7747 continue 7748 } 7749 if err := v.Validate(); err != nil { 7750 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Listeners", i), err.(request.ErrInvalidParams)) 7751 } 7752 } 7753 } 7754 if s.Logging != nil { 7755 if err := s.Logging.Validate(); err != nil { 7756 invalidParams.AddNested("Logging", err.(request.ErrInvalidParams)) 7757 } 7758 } 7759 if s.ServiceDiscovery != nil { 7760 if err := s.ServiceDiscovery.Validate(); err != nil { 7761 invalidParams.AddNested("ServiceDiscovery", err.(request.ErrInvalidParams)) 7762 } 7763 } 7764 7765 if invalidParams.Len() > 0 { 7766 return invalidParams 7767 } 7768 return nil 7769} 7770 7771// SetBackends sets the Backends field's value. 7772func (s *VirtualNodeSpec) SetBackends(v []*Backend) *VirtualNodeSpec { 7773 s.Backends = v 7774 return s 7775} 7776 7777// SetListeners sets the Listeners field's value. 7778func (s *VirtualNodeSpec) SetListeners(v []*Listener) *VirtualNodeSpec { 7779 s.Listeners = v 7780 return s 7781} 7782 7783// SetLogging sets the Logging field's value. 7784func (s *VirtualNodeSpec) SetLogging(v *Logging) *VirtualNodeSpec { 7785 s.Logging = v 7786 return s 7787} 7788 7789// SetServiceDiscovery sets the ServiceDiscovery field's value. 7790func (s *VirtualNodeSpec) SetServiceDiscovery(v *ServiceDiscovery) *VirtualNodeSpec { 7791 s.ServiceDiscovery = v 7792 return s 7793} 7794 7795// An object representing the current status of the virtual node. 7796type VirtualNodeStatus struct { 7797 _ struct{} `type:"structure"` 7798 7799 // Status is a required field 7800 Status *string `locationName:"status" type:"string" required:"true" enum:"VirtualNodeStatusCode"` 7801} 7802 7803// String returns the string representation 7804func (s VirtualNodeStatus) String() string { 7805 return awsutil.Prettify(s) 7806} 7807 7808// GoString returns the string representation 7809func (s VirtualNodeStatus) GoString() string { 7810 return s.String() 7811} 7812 7813// SetStatus sets the Status field's value. 7814func (s *VirtualNodeStatus) SetStatus(v string) *VirtualNodeStatus { 7815 s.Status = &v 7816 return s 7817} 7818 7819// An object representing a virtual router returned by a describe operation. 7820type VirtualRouterData struct { 7821 _ struct{} `type:"structure"` 7822 7823 // MeshName is a required field 7824 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 7825 7826 // An object representing metadata for a resource. 7827 // 7828 // Metadata is a required field 7829 Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` 7830 7831 // An object representing the specification of a virtual router. 7832 // 7833 // Spec is a required field 7834 Spec *VirtualRouterSpec `locationName:"spec" type:"structure" required:"true"` 7835 7836 // An object representing the status of a virtual router. 7837 // 7838 // Status is a required field 7839 Status *VirtualRouterStatus `locationName:"status" type:"structure" required:"true"` 7840 7841 // VirtualRouterName is a required field 7842 VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 7843} 7844 7845// String returns the string representation 7846func (s VirtualRouterData) String() string { 7847 return awsutil.Prettify(s) 7848} 7849 7850// GoString returns the string representation 7851func (s VirtualRouterData) GoString() string { 7852 return s.String() 7853} 7854 7855// SetMeshName sets the MeshName field's value. 7856func (s *VirtualRouterData) SetMeshName(v string) *VirtualRouterData { 7857 s.MeshName = &v 7858 return s 7859} 7860 7861// SetMetadata sets the Metadata field's value. 7862func (s *VirtualRouterData) SetMetadata(v *ResourceMetadata) *VirtualRouterData { 7863 s.Metadata = v 7864 return s 7865} 7866 7867// SetSpec sets the Spec field's value. 7868func (s *VirtualRouterData) SetSpec(v *VirtualRouterSpec) *VirtualRouterData { 7869 s.Spec = v 7870 return s 7871} 7872 7873// SetStatus sets the Status field's value. 7874func (s *VirtualRouterData) SetStatus(v *VirtualRouterStatus) *VirtualRouterData { 7875 s.Status = v 7876 return s 7877} 7878 7879// SetVirtualRouterName sets the VirtualRouterName field's value. 7880func (s *VirtualRouterData) SetVirtualRouterName(v string) *VirtualRouterData { 7881 s.VirtualRouterName = &v 7882 return s 7883} 7884 7885// An object representing a virtual router listener. 7886type VirtualRouterListener struct { 7887 _ struct{} `type:"structure"` 7888 7889 // An object representing a virtual node or virtual router listener port mapping. 7890 // 7891 // PortMapping is a required field 7892 PortMapping *PortMapping `locationName:"portMapping" type:"structure" required:"true"` 7893} 7894 7895// String returns the string representation 7896func (s VirtualRouterListener) String() string { 7897 return awsutil.Prettify(s) 7898} 7899 7900// GoString returns the string representation 7901func (s VirtualRouterListener) GoString() string { 7902 return s.String() 7903} 7904 7905// Validate inspects the fields of the type to determine if they are valid. 7906func (s *VirtualRouterListener) Validate() error { 7907 invalidParams := request.ErrInvalidParams{Context: "VirtualRouterListener"} 7908 if s.PortMapping == nil { 7909 invalidParams.Add(request.NewErrParamRequired("PortMapping")) 7910 } 7911 if s.PortMapping != nil { 7912 if err := s.PortMapping.Validate(); err != nil { 7913 invalidParams.AddNested("PortMapping", err.(request.ErrInvalidParams)) 7914 } 7915 } 7916 7917 if invalidParams.Len() > 0 { 7918 return invalidParams 7919 } 7920 return nil 7921} 7922 7923// SetPortMapping sets the PortMapping field's value. 7924func (s *VirtualRouterListener) SetPortMapping(v *PortMapping) *VirtualRouterListener { 7925 s.PortMapping = v 7926 return s 7927} 7928 7929// An object representing a virtual router returned by a list operation. 7930type VirtualRouterRef struct { 7931 _ struct{} `type:"structure"` 7932 7933 // Arn is a required field 7934 Arn *string `locationName:"arn" type:"string" required:"true"` 7935 7936 // MeshName is a required field 7937 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 7938 7939 // VirtualRouterName is a required field 7940 VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 7941} 7942 7943// String returns the string representation 7944func (s VirtualRouterRef) String() string { 7945 return awsutil.Prettify(s) 7946} 7947 7948// GoString returns the string representation 7949func (s VirtualRouterRef) GoString() string { 7950 return s.String() 7951} 7952 7953// SetArn sets the Arn field's value. 7954func (s *VirtualRouterRef) SetArn(v string) *VirtualRouterRef { 7955 s.Arn = &v 7956 return s 7957} 7958 7959// SetMeshName sets the MeshName field's value. 7960func (s *VirtualRouterRef) SetMeshName(v string) *VirtualRouterRef { 7961 s.MeshName = &v 7962 return s 7963} 7964 7965// SetVirtualRouterName sets the VirtualRouterName field's value. 7966func (s *VirtualRouterRef) SetVirtualRouterName(v string) *VirtualRouterRef { 7967 s.VirtualRouterName = &v 7968 return s 7969} 7970 7971// An object representing a virtual node service provider. 7972type VirtualRouterServiceProvider struct { 7973 _ struct{} `type:"structure"` 7974 7975 // VirtualRouterName is a required field 7976 VirtualRouterName *string `locationName:"virtualRouterName" min:"1" type:"string" required:"true"` 7977} 7978 7979// String returns the string representation 7980func (s VirtualRouterServiceProvider) String() string { 7981 return awsutil.Prettify(s) 7982} 7983 7984// GoString returns the string representation 7985func (s VirtualRouterServiceProvider) GoString() string { 7986 return s.String() 7987} 7988 7989// Validate inspects the fields of the type to determine if they are valid. 7990func (s *VirtualRouterServiceProvider) Validate() error { 7991 invalidParams := request.ErrInvalidParams{Context: "VirtualRouterServiceProvider"} 7992 if s.VirtualRouterName == nil { 7993 invalidParams.Add(request.NewErrParamRequired("VirtualRouterName")) 7994 } 7995 if s.VirtualRouterName != nil && len(*s.VirtualRouterName) < 1 { 7996 invalidParams.Add(request.NewErrParamMinLen("VirtualRouterName", 1)) 7997 } 7998 7999 if invalidParams.Len() > 0 { 8000 return invalidParams 8001 } 8002 return nil 8003} 8004 8005// SetVirtualRouterName sets the VirtualRouterName field's value. 8006func (s *VirtualRouterServiceProvider) SetVirtualRouterName(v string) *VirtualRouterServiceProvider { 8007 s.VirtualRouterName = &v 8008 return s 8009} 8010 8011// An object representing the specification of a virtual router. 8012type VirtualRouterSpec struct { 8013 _ struct{} `type:"structure"` 8014 8015 Listeners []*VirtualRouterListener `locationName:"listeners" min:"1" type:"list"` 8016} 8017 8018// String returns the string representation 8019func (s VirtualRouterSpec) String() string { 8020 return awsutil.Prettify(s) 8021} 8022 8023// GoString returns the string representation 8024func (s VirtualRouterSpec) GoString() string { 8025 return s.String() 8026} 8027 8028// Validate inspects the fields of the type to determine if they are valid. 8029func (s *VirtualRouterSpec) Validate() error { 8030 invalidParams := request.ErrInvalidParams{Context: "VirtualRouterSpec"} 8031 if s.Listeners != nil && len(s.Listeners) < 1 { 8032 invalidParams.Add(request.NewErrParamMinLen("Listeners", 1)) 8033 } 8034 if s.Listeners != nil { 8035 for i, v := range s.Listeners { 8036 if v == nil { 8037 continue 8038 } 8039 if err := v.Validate(); err != nil { 8040 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Listeners", i), err.(request.ErrInvalidParams)) 8041 } 8042 } 8043 } 8044 8045 if invalidParams.Len() > 0 { 8046 return invalidParams 8047 } 8048 return nil 8049} 8050 8051// SetListeners sets the Listeners field's value. 8052func (s *VirtualRouterSpec) SetListeners(v []*VirtualRouterListener) *VirtualRouterSpec { 8053 s.Listeners = v 8054 return s 8055} 8056 8057// An object representing the status of a virtual router. 8058type VirtualRouterStatus struct { 8059 _ struct{} `type:"structure"` 8060 8061 // Status is a required field 8062 Status *string `locationName:"status" type:"string" required:"true" enum:"VirtualRouterStatusCode"` 8063} 8064 8065// String returns the string representation 8066func (s VirtualRouterStatus) String() string { 8067 return awsutil.Prettify(s) 8068} 8069 8070// GoString returns the string representation 8071func (s VirtualRouterStatus) GoString() string { 8072 return s.String() 8073} 8074 8075// SetStatus sets the Status field's value. 8076func (s *VirtualRouterStatus) SetStatus(v string) *VirtualRouterStatus { 8077 s.Status = &v 8078 return s 8079} 8080 8081// An object representing a virtual service backend for a virtual node. 8082type VirtualServiceBackend struct { 8083 _ struct{} `type:"structure"` 8084 8085 // VirtualServiceName is a required field 8086 VirtualServiceName *string `locationName:"virtualServiceName" type:"string" required:"true"` 8087} 8088 8089// String returns the string representation 8090func (s VirtualServiceBackend) String() string { 8091 return awsutil.Prettify(s) 8092} 8093 8094// GoString returns the string representation 8095func (s VirtualServiceBackend) GoString() string { 8096 return s.String() 8097} 8098 8099// Validate inspects the fields of the type to determine if they are valid. 8100func (s *VirtualServiceBackend) Validate() error { 8101 invalidParams := request.ErrInvalidParams{Context: "VirtualServiceBackend"} 8102 if s.VirtualServiceName == nil { 8103 invalidParams.Add(request.NewErrParamRequired("VirtualServiceName")) 8104 } 8105 8106 if invalidParams.Len() > 0 { 8107 return invalidParams 8108 } 8109 return nil 8110} 8111 8112// SetVirtualServiceName sets the VirtualServiceName field's value. 8113func (s *VirtualServiceBackend) SetVirtualServiceName(v string) *VirtualServiceBackend { 8114 s.VirtualServiceName = &v 8115 return s 8116} 8117 8118// An object representing a virtual service returned by a describe operation. 8119type VirtualServiceData struct { 8120 _ struct{} `type:"structure"` 8121 8122 // MeshName is a required field 8123 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 8124 8125 // An object representing metadata for a resource. 8126 // 8127 // Metadata is a required field 8128 Metadata *ResourceMetadata `locationName:"metadata" type:"structure" required:"true"` 8129 8130 // An object representing the specification of a virtual service. 8131 // 8132 // Spec is a required field 8133 Spec *VirtualServiceSpec `locationName:"spec" type:"structure" required:"true"` 8134 8135 // An object representing the status of a virtual service. 8136 // 8137 // Status is a required field 8138 Status *VirtualServiceStatus `locationName:"status" type:"structure" required:"true"` 8139 8140 // VirtualServiceName is a required field 8141 VirtualServiceName *string `locationName:"virtualServiceName" type:"string" required:"true"` 8142} 8143 8144// String returns the string representation 8145func (s VirtualServiceData) String() string { 8146 return awsutil.Prettify(s) 8147} 8148 8149// GoString returns the string representation 8150func (s VirtualServiceData) GoString() string { 8151 return s.String() 8152} 8153 8154// SetMeshName sets the MeshName field's value. 8155func (s *VirtualServiceData) SetMeshName(v string) *VirtualServiceData { 8156 s.MeshName = &v 8157 return s 8158} 8159 8160// SetMetadata sets the Metadata field's value. 8161func (s *VirtualServiceData) SetMetadata(v *ResourceMetadata) *VirtualServiceData { 8162 s.Metadata = v 8163 return s 8164} 8165 8166// SetSpec sets the Spec field's value. 8167func (s *VirtualServiceData) SetSpec(v *VirtualServiceSpec) *VirtualServiceData { 8168 s.Spec = v 8169 return s 8170} 8171 8172// SetStatus sets the Status field's value. 8173func (s *VirtualServiceData) SetStatus(v *VirtualServiceStatus) *VirtualServiceData { 8174 s.Status = v 8175 return s 8176} 8177 8178// SetVirtualServiceName sets the VirtualServiceName field's value. 8179func (s *VirtualServiceData) SetVirtualServiceName(v string) *VirtualServiceData { 8180 s.VirtualServiceName = &v 8181 return s 8182} 8183 8184// An object representing the provider for a virtual service. 8185type VirtualServiceProvider struct { 8186 _ struct{} `type:"structure"` 8187 8188 // An object representing a virtual node service provider. 8189 VirtualNode *VirtualNodeServiceProvider `locationName:"virtualNode" type:"structure"` 8190 8191 // An object representing a virtual node service provider. 8192 VirtualRouter *VirtualRouterServiceProvider `locationName:"virtualRouter" type:"structure"` 8193} 8194 8195// String returns the string representation 8196func (s VirtualServiceProvider) String() string { 8197 return awsutil.Prettify(s) 8198} 8199 8200// GoString returns the string representation 8201func (s VirtualServiceProvider) GoString() string { 8202 return s.String() 8203} 8204 8205// Validate inspects the fields of the type to determine if they are valid. 8206func (s *VirtualServiceProvider) Validate() error { 8207 invalidParams := request.ErrInvalidParams{Context: "VirtualServiceProvider"} 8208 if s.VirtualNode != nil { 8209 if err := s.VirtualNode.Validate(); err != nil { 8210 invalidParams.AddNested("VirtualNode", err.(request.ErrInvalidParams)) 8211 } 8212 } 8213 if s.VirtualRouter != nil { 8214 if err := s.VirtualRouter.Validate(); err != nil { 8215 invalidParams.AddNested("VirtualRouter", err.(request.ErrInvalidParams)) 8216 } 8217 } 8218 8219 if invalidParams.Len() > 0 { 8220 return invalidParams 8221 } 8222 return nil 8223} 8224 8225// SetVirtualNode sets the VirtualNode field's value. 8226func (s *VirtualServiceProvider) SetVirtualNode(v *VirtualNodeServiceProvider) *VirtualServiceProvider { 8227 s.VirtualNode = v 8228 return s 8229} 8230 8231// SetVirtualRouter sets the VirtualRouter field's value. 8232func (s *VirtualServiceProvider) SetVirtualRouter(v *VirtualRouterServiceProvider) *VirtualServiceProvider { 8233 s.VirtualRouter = v 8234 return s 8235} 8236 8237// An object representing a virtual service returned by a list operation. 8238type VirtualServiceRef struct { 8239 _ struct{} `type:"structure"` 8240 8241 // Arn is a required field 8242 Arn *string `locationName:"arn" type:"string" required:"true"` 8243 8244 // MeshName is a required field 8245 MeshName *string `locationName:"meshName" min:"1" type:"string" required:"true"` 8246 8247 // VirtualServiceName is a required field 8248 VirtualServiceName *string `locationName:"virtualServiceName" type:"string" required:"true"` 8249} 8250 8251// String returns the string representation 8252func (s VirtualServiceRef) String() string { 8253 return awsutil.Prettify(s) 8254} 8255 8256// GoString returns the string representation 8257func (s VirtualServiceRef) GoString() string { 8258 return s.String() 8259} 8260 8261// SetArn sets the Arn field's value. 8262func (s *VirtualServiceRef) SetArn(v string) *VirtualServiceRef { 8263 s.Arn = &v 8264 return s 8265} 8266 8267// SetMeshName sets the MeshName field's value. 8268func (s *VirtualServiceRef) SetMeshName(v string) *VirtualServiceRef { 8269 s.MeshName = &v 8270 return s 8271} 8272 8273// SetVirtualServiceName sets the VirtualServiceName field's value. 8274func (s *VirtualServiceRef) SetVirtualServiceName(v string) *VirtualServiceRef { 8275 s.VirtualServiceName = &v 8276 return s 8277} 8278 8279// An object representing the specification of a virtual service. 8280type VirtualServiceSpec struct { 8281 _ struct{} `type:"structure"` 8282 8283 // An object representing the provider for a virtual service. 8284 Provider *VirtualServiceProvider `locationName:"provider" type:"structure"` 8285} 8286 8287// String returns the string representation 8288func (s VirtualServiceSpec) String() string { 8289 return awsutil.Prettify(s) 8290} 8291 8292// GoString returns the string representation 8293func (s VirtualServiceSpec) GoString() string { 8294 return s.String() 8295} 8296 8297// Validate inspects the fields of the type to determine if they are valid. 8298func (s *VirtualServiceSpec) Validate() error { 8299 invalidParams := request.ErrInvalidParams{Context: "VirtualServiceSpec"} 8300 if s.Provider != nil { 8301 if err := s.Provider.Validate(); err != nil { 8302 invalidParams.AddNested("Provider", err.(request.ErrInvalidParams)) 8303 } 8304 } 8305 8306 if invalidParams.Len() > 0 { 8307 return invalidParams 8308 } 8309 return nil 8310} 8311 8312// SetProvider sets the Provider field's value. 8313func (s *VirtualServiceSpec) SetProvider(v *VirtualServiceProvider) *VirtualServiceSpec { 8314 s.Provider = v 8315 return s 8316} 8317 8318// An object representing the status of a virtual service. 8319type VirtualServiceStatus struct { 8320 _ struct{} `type:"structure"` 8321 8322 // Status is a required field 8323 Status *string `locationName:"status" type:"string" required:"true" enum:"VirtualServiceStatusCode"` 8324} 8325 8326// String returns the string representation 8327func (s VirtualServiceStatus) String() string { 8328 return awsutil.Prettify(s) 8329} 8330 8331// GoString returns the string representation 8332func (s VirtualServiceStatus) GoString() string { 8333 return s.String() 8334} 8335 8336// SetStatus sets the Status field's value. 8337func (s *VirtualServiceStatus) SetStatus(v string) *VirtualServiceStatus { 8338 s.Status = &v 8339 return s 8340} 8341 8342// An object representing a target and its relative weight. Traffic is distributed 8343// across targets according to their relative weight. For example, a weighted 8344// target with a relative weight of 50 receives five times as much traffic as 8345// one with a relative weight of 10. 8346type WeightedTarget struct { 8347 _ struct{} `type:"structure"` 8348 8349 // VirtualNode is a required field 8350 VirtualNode *string `locationName:"virtualNode" min:"1" type:"string" required:"true"` 8351 8352 // Weight is a required field 8353 Weight *int64 `locationName:"weight" type:"integer" required:"true"` 8354} 8355 8356// String returns the string representation 8357func (s WeightedTarget) String() string { 8358 return awsutil.Prettify(s) 8359} 8360 8361// GoString returns the string representation 8362func (s WeightedTarget) GoString() string { 8363 return s.String() 8364} 8365 8366// Validate inspects the fields of the type to determine if they are valid. 8367func (s *WeightedTarget) Validate() error { 8368 invalidParams := request.ErrInvalidParams{Context: "WeightedTarget"} 8369 if s.VirtualNode == nil { 8370 invalidParams.Add(request.NewErrParamRequired("VirtualNode")) 8371 } 8372 if s.VirtualNode != nil && len(*s.VirtualNode) < 1 { 8373 invalidParams.Add(request.NewErrParamMinLen("VirtualNode", 1)) 8374 } 8375 if s.Weight == nil { 8376 invalidParams.Add(request.NewErrParamRequired("Weight")) 8377 } 8378 8379 if invalidParams.Len() > 0 { 8380 return invalidParams 8381 } 8382 return nil 8383} 8384 8385// SetVirtualNode sets the VirtualNode field's value. 8386func (s *WeightedTarget) SetVirtualNode(v string) *WeightedTarget { 8387 s.VirtualNode = &v 8388 return s 8389} 8390 8391// SetWeight sets the Weight field's value. 8392func (s *WeightedTarget) SetWeight(v int64) *WeightedTarget { 8393 s.Weight = &v 8394 return s 8395} 8396 8397const ( 8398 // DurationUnitMs is a DurationUnit enum value 8399 DurationUnitMs = "ms" 8400 8401 // DurationUnitS is a DurationUnit enum value 8402 DurationUnitS = "s" 8403) 8404 8405const ( 8406 // EgressFilterTypeAllowAll is a EgressFilterType enum value 8407 EgressFilterTypeAllowAll = "ALLOW_ALL" 8408 8409 // EgressFilterTypeDropAll is a EgressFilterType enum value 8410 EgressFilterTypeDropAll = "DROP_ALL" 8411) 8412 8413const ( 8414 // HttpMethodConnect is a HttpMethod enum value 8415 HttpMethodConnect = "CONNECT" 8416 8417 // HttpMethodDelete is a HttpMethod enum value 8418 HttpMethodDelete = "DELETE" 8419 8420 // HttpMethodGet is a HttpMethod enum value 8421 HttpMethodGet = "GET" 8422 8423 // HttpMethodHead is a HttpMethod enum value 8424 HttpMethodHead = "HEAD" 8425 8426 // HttpMethodOptions is a HttpMethod enum value 8427 HttpMethodOptions = "OPTIONS" 8428 8429 // HttpMethodPatch is a HttpMethod enum value 8430 HttpMethodPatch = "PATCH" 8431 8432 // HttpMethodPost is a HttpMethod enum value 8433 HttpMethodPost = "POST" 8434 8435 // HttpMethodPut is a HttpMethod enum value 8436 HttpMethodPut = "PUT" 8437 8438 // HttpMethodTrace is a HttpMethod enum value 8439 HttpMethodTrace = "TRACE" 8440) 8441 8442const ( 8443 // HttpSchemeHttp is a HttpScheme enum value 8444 HttpSchemeHttp = "http" 8445 8446 // HttpSchemeHttps is a HttpScheme enum value 8447 HttpSchemeHttps = "https" 8448) 8449 8450const ( 8451 // MeshStatusCodeActive is a MeshStatusCode enum value 8452 MeshStatusCodeActive = "ACTIVE" 8453 8454 // MeshStatusCodeDeleted is a MeshStatusCode enum value 8455 MeshStatusCodeDeleted = "DELETED" 8456 8457 // MeshStatusCodeInactive is a MeshStatusCode enum value 8458 MeshStatusCodeInactive = "INACTIVE" 8459) 8460 8461const ( 8462 // PortProtocolHttp is a PortProtocol enum value 8463 PortProtocolHttp = "http" 8464 8465 // PortProtocolTcp is a PortProtocol enum value 8466 PortProtocolTcp = "tcp" 8467) 8468 8469const ( 8470 // RouteStatusCodeActive is a RouteStatusCode enum value 8471 RouteStatusCodeActive = "ACTIVE" 8472 8473 // RouteStatusCodeDeleted is a RouteStatusCode enum value 8474 RouteStatusCodeDeleted = "DELETED" 8475 8476 // RouteStatusCodeInactive is a RouteStatusCode enum value 8477 RouteStatusCodeInactive = "INACTIVE" 8478) 8479 8480const ( 8481 // TcpRetryPolicyEventConnectionError is a TcpRetryPolicyEvent enum value 8482 TcpRetryPolicyEventConnectionError = "connection-error" 8483) 8484 8485const ( 8486 // VirtualNodeStatusCodeActive is a VirtualNodeStatusCode enum value 8487 VirtualNodeStatusCodeActive = "ACTIVE" 8488 8489 // VirtualNodeStatusCodeDeleted is a VirtualNodeStatusCode enum value 8490 VirtualNodeStatusCodeDeleted = "DELETED" 8491 8492 // VirtualNodeStatusCodeInactive is a VirtualNodeStatusCode enum value 8493 VirtualNodeStatusCodeInactive = "INACTIVE" 8494) 8495 8496const ( 8497 // VirtualRouterStatusCodeActive is a VirtualRouterStatusCode enum value 8498 VirtualRouterStatusCodeActive = "ACTIVE" 8499 8500 // VirtualRouterStatusCodeDeleted is a VirtualRouterStatusCode enum value 8501 VirtualRouterStatusCodeDeleted = "DELETED" 8502 8503 // VirtualRouterStatusCodeInactive is a VirtualRouterStatusCode enum value 8504 VirtualRouterStatusCodeInactive = "INACTIVE" 8505) 8506 8507const ( 8508 // VirtualServiceStatusCodeActive is a VirtualServiceStatusCode enum value 8509 VirtualServiceStatusCodeActive = "ACTIVE" 8510 8511 // VirtualServiceStatusCodeDeleted is a VirtualServiceStatusCode enum value 8512 VirtualServiceStatusCodeDeleted = "DELETED" 8513 8514 // VirtualServiceStatusCodeInactive is a VirtualServiceStatusCode enum value 8515 VirtualServiceStatusCodeInactive = "INACTIVE" 8516) 8517