class QingCloud::SDK::RouterService

Attributes

config[RW]
properties[RW]

Public Class Methods

new(config, properties) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 24
def initialize(config, properties)
  self.config     = config
  self.properties = properties.deep_symbolize_keys
end

Public Instance Methods

add_router_static_entries(entries: [], router_static: '') click to toggle source

Documentation URL: docs.qingcloud.com/api/router/add_router_static_entries.html

# File lib/qingcloud/sdk/service/router.rb, line 30
def add_router_static_entries(entries: [], router_static: '')
  input = {
    config:         config,
    properties:     properties,
    api_name:       'AddRouterStaticEntries',
    request_method: 'GET',
    request_params: {
      'entries'       => entries,
      'router_static' => router_static,
    },
  }

  add_router_static_entries_input_validate input

  request = Request.new input
  request.send
end
add_router_statics(router: '', statics: [], vxnet: '') click to toggle source

Documentation URL: docs.qingcloud.com/api/router/add_router_statics.html

# File lib/qingcloud/sdk/service/router.rb, line 64
def add_router_statics(router: '', statics: [], vxnet: '')
  input = {
    config:         config,
    properties:     properties,
    api_name:       'AddRouterStatics',
    request_method: 'GET',
    request_params: {
      'router'  => router,
      'statics' => statics,
      'vxnet'   => vxnet,
    },
  }

  add_router_statics_input_validate input

  request = Request.new input
  request.send
end
create_routers(count: nil, router_name: '', router_type: nil, security_group: '', vpc_network: '') click to toggle source

Documentation URL: docs.qingcloud.com/api/router/create_routers.html

# File lib/qingcloud/sdk/service/router.rb, line 111
def create_routers(count: nil, router_name: '', router_type: nil, security_group: '', vpc_network: '')
  input = {
    config:         config,
    properties:     properties,
    api_name:       'CreateRouters',
    request_method: 'GET',
    request_params: {
      'count'          => count,
      'router_name'    => router_name,
      'router_type'    => router_type, # router_type's available values: 0, 1, 2, 3
      'security_group' => security_group,
      'vpc_network'    => vpc_network,
    },
  }

  create_routers_input_validate input

  request = Request.new input
  request.send
end
delete_router_static_entries(router_static_entries: []) click to toggle source

Documentation URL: docs.qingcloud.com/api/router/delete_router_static_entries.html

# File lib/qingcloud/sdk/service/router.rb, line 152
def delete_router_static_entries(router_static_entries: [])
  input = {
    config:         config,
    properties:     properties,
    api_name:       'DeleteRouterStaticEntries',
    request_method: 'GET',
    request_params: {
      'router_static_entries' => router_static_entries,
    },
  }

  delete_router_static_entries_input_validate input

  request = Request.new input
  request.send
end
delete_router_statics(router_statics: []) click to toggle source

Documentation URL: docs.qingcloud.com/api/router/delete_router_statics.html

# File lib/qingcloud/sdk/service/router.rb, line 182
def delete_router_statics(router_statics: [])
  input = {
    config:         config,
    properties:     properties,
    api_name:       'DeleteRouterStatics',
    request_method: 'GET',
    request_params: {
      'router_statics' => router_statics,
    },
  }

  delete_router_statics_input_validate input

  request = Request.new input
  request.send
end
delete_routers(routers: []) click to toggle source

Documentation URL: docs.qingcloud.com/api/router/delete_routers.html

# File lib/qingcloud/sdk/service/router.rb, line 212
def delete_routers(routers: [])
  input = {
    config:         config,
    properties:     properties,
    api_name:       'DeleteRouters',
    request_method: 'GET',
    request_params: {
      'routers' => routers,
    },
  }

  delete_routers_input_validate input

  request = Request.new input
  request.send
end
describe_router_static_entries(limit: nil, offset: nil, router_static: '', router_static_entry_id: '') click to toggle source

Documentation URL: docs.qingcloud.com/api/router/describe_router_static_entries.html

# File lib/qingcloud/sdk/service/router.rb, line 242
def describe_router_static_entries(limit: nil, offset: nil, router_static: '', router_static_entry_id: '')
  input = {
    config:         config,
    properties:     properties,
    api_name:       'DescribeRouterStaticEntries',
    request_method: 'GET',
    request_params: {
      'limit'                  => limit,
      'offset'                 => offset,
      'router_static'          => router_static,
      'router_static_entry_id' => router_static_entry_id,
    },
  }

  describe_router_static_entries_input_validate input

  request = Request.new input
  request.send
end
describe_router_statics(limit: nil, offset: nil, router: '', router_statics: [], static_type: nil, verbose: nil, vxnet: '') click to toggle source

Documentation URL: docs.qingcloud.com/api/router/describe_router_statics.html

# File lib/qingcloud/sdk/service/router.rb, line 271
def describe_router_statics(limit: nil, offset: nil, router: '', router_statics: [], static_type: nil, verbose: nil, vxnet: '')
  input = {
    config:         config,
    properties:     properties,
    api_name:       'DescribeRouterStatics',
    request_method: 'GET',
    request_params: {
      'limit'          => limit,
      'offset'         => offset,
      'router'         => router,
      'router_statics' => router_statics,
      'static_type'    => static_type, # static_type's available values: 1, 2, 3, 4, 5, 6, 7, 8
      'verbose'        => verbose, # verbose's available values: 0, 1
      'vxnet'          => vxnet,
    },
  }

  describe_router_statics_input_validate input

  request = Request.new input
  request.send
end
describe_router_vxnets(limit: nil, offset: nil, router: '', verbose: nil, vxnet: '') click to toggle source

Documentation URL: docs.qingcloud.com/api/router/describe_router_vxnets.html

# File lib/qingcloud/sdk/service/router.rb, line 329
def describe_router_vxnets(limit: nil, offset: nil, router: '', verbose: nil, vxnet: '')
  input = {
    config:         config,
    properties:     properties,
    api_name:       'DescribeRouterVxnets',
    request_method: 'GET',
    request_params: {
      'limit'   => limit,
      'offset'  => offset,
      'router'  => router,
      'verbose' => verbose, # verbose's available values: 0, 1
      'vxnet'   => vxnet,
    },
  }

  describe_router_vxnets_input_validate input

  request = Request.new input
  request.send
end
describe_routers(limit: nil, offset: nil, routers: [], search_word: '', status: [], tags: [], verbose: nil, vxnet: '') click to toggle source

Documentation URL: docs.qingcloud.com/api/router/describe_routers.html

# File lib/qingcloud/sdk/service/router.rb, line 374
def describe_routers(limit: nil, offset: nil, routers: [], search_word: '', status: [], tags: [], verbose: nil, vxnet: '')
  input = {
    config:         config,
    properties:     properties,
    api_name:       'DescribeRouters',
    request_method: 'GET',
    request_params: {
      'limit'       => limit,
      'offset'      => offset,
      'routers'     => routers,
      'search_word' => search_word,
      'status'      => status,
      'tags'        => tags,
      'verbose'     => verbose, # verbose's available values: 0, 1
      'vxnet'       => vxnet,
    },
  }

  describe_routers_input_validate input

  request = Request.new input
  request.send
end
get_router_monitor(end_time: '', meters: [], resource: '', start_time: '', step: '') click to toggle source

Documentation URL: docs.qingcloud.com/api/monitor/get_monitor.html

# File lib/qingcloud/sdk/service/router.rb, line 418
def get_router_monitor(end_time: '', meters: [], resource: '', start_time: '', step: '')
  input = {
    config:         config,
    properties:     properties,
    api_name:       'GetMonitor',
    request_method: 'GET',
    request_params: {
      'end_time'   => end_time,
      'meters'     => meters,
      'resource'   => resource,
      'start_time' => start_time,
      'step'       => step, # step's available values: 5m, 15m, 2h, 1d
    },
  }

  get_router_monitor_input_validate input

  request = Request.new input
  request.send
end
join_router(dyn_ip_end: '', dyn_ip_start: '', features: nil, ip_network: '', manager_ip: '', router: '', vxnet: '') click to toggle source

Documentation URL: docs.qingcloud.com/api/router/join_router.html

# File lib/qingcloud/sdk/service/router.rb, line 479
def join_router(dyn_ip_end: '', dyn_ip_start: '', features: nil, ip_network: '', manager_ip: '', router: '', vxnet: '')
  input = {
    config:         config,
    properties:     properties,
    api_name:       'JoinRouter',
    request_method: 'GET',
    request_params: {
      'dyn_ip_end'   => dyn_ip_end,
      'dyn_ip_start' => dyn_ip_start,
      'features'     => features, # features's available values: 1
      'ip_network'   => ip_network,
      'manager_ip'   => manager_ip,
      'router'       => router,
      'vxnet'        => vxnet,
    },
  }

  join_router_input_validate input

  request = Request.new input
  request.send
end
leave_router(router: '', vxnets: []) click to toggle source

Documentation URL: docs.qingcloud.com/api/router/leave_router.html

# File lib/qingcloud/sdk/service/router.rb, line 534
def leave_router(router: '', vxnets: [])
  input = {
    config:         config,
    properties:     properties,
    api_name:       'LeaveRouter',
    request_method: 'GET',
    request_params: {
      'router' => router,
      'vxnets' => vxnets,
    },
  }

  leave_router_input_validate input

  request = Request.new input
  request.send
end
modify_router_attributes(description: '', dyn_ip_end: '', dyn_ip_start: '', eip: '', features: nil, router: '', router_name: '', security_group: '', vxnet: '') click to toggle source

Documentation URL: docs.qingcloud.com/api/router/modify_router_attributes.html

# File lib/qingcloud/sdk/service/router.rb, line 569
def modify_router_attributes(description: '', dyn_ip_end: '', dyn_ip_start: '', eip: '', features: nil, router: '', router_name: '', security_group: '', vxnet: '')
  input = {
    config:         config,
    properties:     properties,
    api_name:       'ModifyRouterAttributes',
    request_method: 'GET',
    request_params: {
      'description'    => description,
      'dyn_ip_end'     => dyn_ip_end,
      'dyn_ip_start'   => dyn_ip_start,
      'eip'            => eip,
      'features'       => features, # features's available values: 1, 2
      'router'         => router,
      'router_name'    => router_name,
      'security_group' => security_group,
      'vxnet'          => vxnet,
    },
  }

  modify_router_attributes_input_validate input

  request = Request.new input
  request.send
end
modify_router_static_attributes(router_static: '', router_static_name: '', val1: '', val2: '', val3: '', val4: '', val5: '', val6: '') click to toggle source

Documentation URL: docs.qingcloud.com/api/router/modify_router_static_attributes.html

# File lib/qingcloud/sdk/service/router.rb, line 618
def modify_router_static_attributes(router_static: '', router_static_name: '', val1: '', val2: '', val3: '', val4: '', val5: '', val6: '')
  input = {
    config:         config,
    properties:     properties,
    api_name:       'ModifyRouterStaticAttributes',
    request_method: 'GET',
    request_params: {
      'router_static'      => router_static,
      'router_static_name' => router_static_name,
      'val1'               => val1,
      'val2'               => val2,
      'val3'               => val3,
      'val4'               => val4,
      'val5'               => val5,
      'val6'               => val6,
    },
  }

  modify_router_static_attributes_input_validate input

  request = Request.new input
  request.send
end
modify_router_static_entry_attributes(router_static_entry: '', router_static_entry_name: '', val1: '', val2: '') click to toggle source

Documentation URL: docs.qingcloud.com/api/router/modify_router_static_entry_attributes.html

# File lib/qingcloud/sdk/service/router.rb, line 655
def modify_router_static_entry_attributes(router_static_entry: '', router_static_entry_name: '', val1: '', val2: '')
  input = {
    config:         config,
    properties:     properties,
    api_name:       'ModifyRouterStaticEntryAttributes',
    request_method: 'GET',
    request_params: {
      'router_static_entry'      => router_static_entry,
      'router_static_entry_name' => router_static_entry_name,
      'val1'                     => val1,
      'val2'                     => val2,
    },
  }

  modify_router_static_entry_attributes_input_validate input

  request = Request.new input
  request.send
end
power_off_routers(routers: []) click to toggle source

Documentation URL: docs.qingcloud.com/api/router/poweroff_routers.html

# File lib/qingcloud/sdk/service/router.rb, line 688
def power_off_routers(routers: [])
  input = {
    config:         config,
    properties:     properties,
    api_name:       'PowerOffRouters',
    request_method: 'GET',
    request_params: {
      'routers' => routers,
    },
  }

  power_off_routers_input_validate input

  request = Request.new input
  request.send
end
power_on_routers(routers: []) click to toggle source

Documentation URL: docs.qingcloud.com/api/router/poweron_routers.html

# File lib/qingcloud/sdk/service/router.rb, line 718
def power_on_routers(routers: [])
  input = {
    config:         config,
    properties:     properties,
    api_name:       'PowerOnRouters',
    request_method: 'GET',
    request_params: {
      'routers' => routers,
    },
  }

  power_on_routers_input_validate input

  request = Request.new input
  request.send
end
update_routers(routers: []) click to toggle source

Documentation URL: docs.qingcloud.com/api/router/update_routers.html

# File lib/qingcloud/sdk/service/router.rb, line 748
def update_routers(routers: [])
  input = {
    config:         config,
    properties:     properties,
    api_name:       'UpdateRouters',
    request_method: 'GET',
    request_params: {
      'routers' => routers,
    },
  }

  update_routers_input_validate input

  request = Request.new input
  request.send
end

Private Instance Methods

add_router_static_entries_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 50
def add_router_static_entries_input_validate(input)
  input.deep_stringify_keys!

  input['request_params']['entries'].map do |x|
  end

  unless !input['request_params']['router_static'].nil? && !input['request_params']['router_static'].to_s.empty?
    raise ParameterRequiredError.new('router_static', 'AddRouterStaticEntriesInput')
  end
end
add_router_statics_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 85
def add_router_statics_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['router'].nil? && !input['request_params']['router'].to_s.empty?
    raise ParameterRequiredError.new('router', 'AddRouterStaticsInput')
  end

  unless !input['request_params']['statics'].nil? && !input['request_params']['statics'].to_s.empty?
    raise ParameterRequiredError.new('statics', 'AddRouterStaticsInput')
  end

  input['request_params']['statics'].map do |x|
    next unless x['static_type'] && !x['static_type'].to_s.empty?
    static_type_valid_values = %w(1 2 3 4 5 6 7 8)
    next if static_type_valid_values.include? x['static_type'].to_s
    raise ParameterValueNotAllowedError.new(
      'static_type',
      x['static_type'],
      static_type_valid_values,
    )
  end
end
create_routers_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 134
def create_routers_input_validate(input)
  input.deep_stringify_keys!

  if input['request_params']['router_type'] && !input['request_params']['router_type'].to_s.empty?
    router_type_valid_values = %w(0 1 2 3)
    unless router_type_valid_values.include? input['request_params']['router_type'].to_s
      raise ParameterValueNotAllowedError.new(
        'router_type',
        input['request_params']['router_type'],
        router_type_valid_values,
      )
    end
  end
end
delete_router_static_entries_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 171
def delete_router_static_entries_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['router_static_entries'].nil? && !input['request_params']['router_static_entries'].to_s.empty?
    raise ParameterRequiredError.new('router_static_entries', 'DeleteRouterStaticEntriesInput')
  end
end
delete_router_statics_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 201
def delete_router_statics_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['router_statics'].nil? && !input['request_params']['router_statics'].to_s.empty?
    raise ParameterRequiredError.new('router_statics', 'DeleteRouterStaticsInput')
  end
end
delete_routers_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 231
def delete_routers_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['routers'].nil? && !input['request_params']['routers'].to_s.empty?
    raise ParameterRequiredError.new('routers', 'DeleteRoutersInput')
  end
end
describe_router_static_entries_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 264
def describe_router_static_entries_input_validate(input)
  input.deep_stringify_keys!
end
describe_router_statics_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 296
def describe_router_statics_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['router'].nil? && !input['request_params']['router'].to_s.empty?
    raise ParameterRequiredError.new('router', 'DescribeRouterStaticsInput')
  end

  if input['request_params']['static_type'] && !input['request_params']['static_type'].to_s.empty?
    static_type_valid_values = %w(1 2 3 4 5 6 7 8)
    unless static_type_valid_values.include? input['request_params']['static_type'].to_s
      raise ParameterValueNotAllowedError.new(
        'static_type',
        input['request_params']['static_type'],
        static_type_valid_values,
      )
    end
  end

  if input['request_params']['verbose'] && !input['request_params']['verbose'].to_s.empty?
    verbose_valid_values = %w(0 1)
    unless verbose_valid_values.include? input['request_params']['verbose'].to_s
      raise ParameterValueNotAllowedError.new(
        'verbose',
        input['request_params']['verbose'],
        verbose_valid_values,
      )
    end
  end
end
describe_router_vxnets_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 352
def describe_router_vxnets_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['router'].nil? && !input['request_params']['router'].to_s.empty?
    raise ParameterRequiredError.new('router', 'DescribeRouterVxnetsInput')
  end

  if input['request_params']['verbose'] && !input['request_params']['verbose'].to_s.empty?
    verbose_valid_values = %w(0 1)
    unless verbose_valid_values.include? input['request_params']['verbose'].to_s
      raise ParameterValueNotAllowedError.new(
        'verbose',
        input['request_params']['verbose'],
        verbose_valid_values,
      )
    end
  end
end
describe_routers_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 400
def describe_routers_input_validate(input)
  input.deep_stringify_keys!

  if input['request_params']['verbose'] && !input['request_params']['verbose'].to_s.empty?
    verbose_valid_values = %w(0 1)
    unless verbose_valid_values.include? input['request_params']['verbose'].to_s
      raise ParameterValueNotAllowedError.new(
        'verbose',
        input['request_params']['verbose'],
        verbose_valid_values,
      )
    end
  end
end
get_router_monitor_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 441
def get_router_monitor_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['end_time'].nil? && !input['request_params']['end_time'].to_s.empty?
    raise ParameterRequiredError.new('end_time', 'GetRouterMonitorInput')
  end

  unless !input['request_params']['meters'].nil? && !input['request_params']['meters'].to_s.empty?
    raise ParameterRequiredError.new('meters', 'GetRouterMonitorInput')
  end

  unless !input['request_params']['resource'].nil? && !input['request_params']['resource'].to_s.empty?
    raise ParameterRequiredError.new('resource', 'GetRouterMonitorInput')
  end

  unless !input['request_params']['start_time'].nil? && !input['request_params']['start_time'].to_s.empty?
    raise ParameterRequiredError.new('start_time', 'GetRouterMonitorInput')
  end

  unless !input['request_params']['step'].nil? && !input['request_params']['step'].to_s.empty?
    raise ParameterRequiredError.new('step', 'GetRouterMonitorInput')
  end

  if input['request_params']['step'] && !input['request_params']['step'].to_s.empty?
    step_valid_values = %w(5m 15m 2h 1d)
    unless step_valid_values.include? input['request_params']['step'].to_s
      raise ParameterValueNotAllowedError.new(
        'step',
        input['request_params']['step'],
        step_valid_values,
      )
    end
  end
end
join_router_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 504
def join_router_input_validate(input)
  input.deep_stringify_keys!

  if input['request_params']['features'] && !input['request_params']['features'].to_s.empty?
    features_valid_values = ['1']
    unless features_valid_values.include? input['request_params']['features'].to_s
      raise ParameterValueNotAllowedError.new(
        'features',
        input['request_params']['features'],
        features_valid_values,
      )
    end
  end

  unless !input['request_params']['ip_network'].nil? && !input['request_params']['ip_network'].to_s.empty?
    raise ParameterRequiredError.new('ip_network', 'JoinRouterInput')
  end

  unless !input['request_params']['router'].nil? && !input['request_params']['router'].to_s.empty?
    raise ParameterRequiredError.new('router', 'JoinRouterInput')
  end

  unless !input['request_params']['vxnet'].nil? && !input['request_params']['vxnet'].to_s.empty?
    raise ParameterRequiredError.new('vxnet', 'JoinRouterInput')
  end
end
leave_router_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 554
def leave_router_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['router'].nil? && !input['request_params']['router'].to_s.empty?
    raise ParameterRequiredError.new('router', 'LeaveRouterInput')
  end

  unless !input['request_params']['vxnets'].nil? && !input['request_params']['vxnets'].to_s.empty?
    raise ParameterRequiredError.new('vxnets', 'LeaveRouterInput')
  end
end
modify_router_attributes_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 596
def modify_router_attributes_input_validate(input)
  input.deep_stringify_keys!

  if input['request_params']['features'] && !input['request_params']['features'].to_s.empty?
    features_valid_values = %w(1 2)
    unless features_valid_values.include? input['request_params']['features'].to_s
      raise ParameterValueNotAllowedError.new(
        'features',
        input['request_params']['features'],
        features_valid_values,
      )
    end
  end

  unless !input['request_params']['router'].nil? && !input['request_params']['router'].to_s.empty?
    raise ParameterRequiredError.new('router', 'ModifyRouterAttributesInput')
  end
end
modify_router_static_attributes_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 644
def modify_router_static_attributes_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['router_static'].nil? && !input['request_params']['router_static'].to_s.empty?
    raise ParameterRequiredError.new('router_static', 'ModifyRouterStaticAttributesInput')
  end
end
modify_router_static_entry_attributes_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 677
def modify_router_static_entry_attributes_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['router_static_entry'].nil? && !input['request_params']['router_static_entry'].to_s.empty?
    raise ParameterRequiredError.new('router_static_entry', 'ModifyRouterStaticEntryAttributesInput')
  end
end
power_off_routers_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 707
def power_off_routers_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['routers'].nil? && !input['request_params']['routers'].to_s.empty?
    raise ParameterRequiredError.new('routers', 'PowerOffRoutersInput')
  end
end
power_on_routers_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 737
def power_on_routers_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['routers'].nil? && !input['request_params']['routers'].to_s.empty?
    raise ParameterRequiredError.new('routers', 'PowerOnRoutersInput')
  end
end
update_routers_input_validate(input) click to toggle source
# File lib/qingcloud/sdk/service/router.rb, line 767
def update_routers_input_validate(input)
  input.deep_stringify_keys!

  unless !input['request_params']['routers'].nil? && !input['request_params']['routers'].to_s.empty?
    raise ParameterRequiredError.new('routers', 'UpdateRoutersInput')
  end
end