vrouters.go 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package ecs
  2. import (
  3. "github.com/denverdino/aliyungo/common"
  4. "github.com/denverdino/aliyungo/util"
  5. )
  6. type DescribeVRoutersArgs struct {
  7. VRouterId string
  8. RegionId common.Region
  9. common.Pagination
  10. }
  11. //
  12. // You can read doc at http://docs.aliyun.com/#/pub/ecs/open-api/datatype&vroutersettype
  13. type VRouterSetType struct {
  14. VRouterId string
  15. RegionId common.Region
  16. VpcId string
  17. RouteTableIds struct {
  18. RouteTableId []string
  19. }
  20. VRouterName string
  21. Description string
  22. CreationTime util.ISO6801Time
  23. }
  24. type DescribeVRoutersResponse struct {
  25. common.Response
  26. common.PaginationResult
  27. VRouters struct {
  28. VRouter []VRouterSetType
  29. }
  30. }
  31. // DescribeVRouters describes Virtual Routers
  32. //
  33. // You can read doc at http://docs.aliyun.com/#/pub/ecs/open-api/vrouter&describevrouters
  34. func (client *Client) DescribeVRouters(args *DescribeVRoutersArgs) (vrouters []VRouterSetType, pagination *common.PaginationResult, err error) {
  35. args.Validate()
  36. response := DescribeVRoutersResponse{}
  37. err = client.Invoke("DescribeVRouters", args, &response)
  38. if err == nil {
  39. return response.VRouters.VRouter, &response.PaginationResult, nil
  40. }
  41. return nil, nil, err
  42. }
  43. type ModifyVRouterAttributeArgs struct {
  44. VRouterId string
  45. VRouterName string
  46. Description string
  47. }
  48. type ModifyVRouterAttributeResponse struct {
  49. common.Response
  50. }
  51. // ModifyVRouterAttribute modifies attribute of Virtual Router
  52. //
  53. // You can read doc at http://docs.aliyun.com/#/pub/ecs/open-api/vrouter&modifyvrouterattribute
  54. func (client *Client) ModifyVRouterAttribute(args *ModifyVRouterAttributeArgs) error {
  55. response := ModifyVRouterAttributeResponse{}
  56. return client.Invoke("ModifyVRouterAttribute", args, &response)
  57. }