class QingCloud::SDK::VolumeService
Attributes
config[RW]
properties[RW]
Public Class Methods
new(config, properties)
click to toggle source
# File lib/qingcloud/sdk/service/volume.rb, line 24 def initialize(config, properties) self.config = config self.properties = properties.deep_symbolize_keys end
Public Instance Methods
attach_volumes(instance: '', volumes: [])
click to toggle source
Documentation URL: docs.qingcloud.com/api/volume/attach_volumes.html
# File lib/qingcloud/sdk/service/volume.rb, line 30 def attach_volumes(instance: '', volumes: []) input = { config: config, properties: properties, api_name: 'AttachVolumes', request_method: 'GET', request_params: { 'instance' => instance, 'volumes' => volumes, }, } attach_volumes_input_validate input request = Request.new input request.send end
create_volumes(count: nil, size: nil, volume_name: '', volume_type: nil)
click to toggle source
Documentation URL: docs.qingcloud.com/api/volume/create_volumes.html
# File lib/qingcloud/sdk/service/volume.rb, line 65 def create_volumes(count: nil, size: nil, volume_name: '', volume_type: nil) input = { config: config, properties: properties, api_name: 'CreateVolumes', request_method: 'GET', request_params: { 'count' => count, 'size' => size, 'volume_name' => volume_name, 'volume_type' => volume_type, # volume_type's available values: 0, 1, 2, 3 }, } create_volumes_input_validate input request = Request.new input request.send end
delete_volumes(volumes: [])
click to toggle source
Documentation URL: docs.qingcloud.com/api/volume/delete_volumes.html
# File lib/qingcloud/sdk/service/volume.rb, line 109 def delete_volumes(volumes: []) input = { config: config, properties: properties, api_name: 'DeleteVolumes', request_method: 'GET', request_params: { 'volumes' => volumes, }, } delete_volumes_input_validate input request = Request.new input request.send end
describe_volumes(limit: nil, offset: nil, search_word: '', status: [], tags: [], verbose: nil, volume_type: nil, volumes: [])
click to toggle source
Documentation URL: docs.qingcloud.com/api/volume/describe_volumes.html
# File lib/qingcloud/sdk/service/volume.rb, line 139 def describe_volumes(limit: nil, offset: nil, search_word: '', status: [], tags: [], verbose: nil, volume_type: nil, volumes: []) input = { config: config, properties: properties, api_name: 'DescribeVolumes', request_method: 'GET', request_params: { 'limit' => limit, 'offset' => offset, 'search_word' => search_word, 'status' => status, 'tags' => tags, 'verbose' => verbose, # verbose's available values: 0, 1 'volume_type' => volume_type, # volume_type's available values: 0, 1, 2, 3 'volumes' => volumes, }, } describe_volumes_input_validate input request = Request.new input request.send end
detach_volumes(instance: '', volumes: [])
click to toggle source
Documentation URL: docs.qingcloud.com/api/volume/detach_volumes.html
# File lib/qingcloud/sdk/service/volume.rb, line 194 def detach_volumes(instance: '', volumes: []) input = { config: config, properties: properties, api_name: 'DetachVolumes', request_method: 'GET', request_params: { 'instance' => instance, 'volumes' => volumes, }, } detach_volumes_input_validate input request = Request.new input request.send end
modify_volume_attributes(description: '', volume: '', volume_name: '')
click to toggle source
Documentation URL: docs.qingcloud.com/api/volume/modify_volume_attributes.html
# File lib/qingcloud/sdk/service/volume.rb, line 229 def modify_volume_attributes(description: '', volume: '', volume_name: '') input = { config: config, properties: properties, api_name: 'ModifyVolumeAttributes', request_method: 'GET', request_params: { 'description' => description, 'volume' => volume, 'volume_name' => volume_name, }, } modify_volume_attributes_input_validate input request = Request.new input request.send end
resize_volumes(size: nil, volumes: [])
click to toggle source
Documentation URL: docs.qingcloud.com/api/volume/resize_volumes.html
# File lib/qingcloud/sdk/service/volume.rb, line 261 def resize_volumes(size: nil, volumes: []) input = { config: config, properties: properties, api_name: 'ResizeVolumes', request_method: 'GET', request_params: { 'size' => size, 'volumes' => volumes, }, } resize_volumes_input_validate input request = Request.new input request.send end
Private Instance Methods
attach_volumes_input_validate(input)
click to toggle source
# File lib/qingcloud/sdk/service/volume.rb, line 50 def attach_volumes_input_validate(input) input.deep_stringify_keys! unless !input['request_params']['instance'].nil? && !input['request_params']['instance'].to_s.empty? raise ParameterRequiredError.new('instance', 'AttachVolumesInput') end unless !input['request_params']['volumes'].nil? && !input['request_params']['volumes'].to_s.empty? raise ParameterRequiredError.new('volumes', 'AttachVolumesInput') end end
create_volumes_input_validate(input)
click to toggle source
# File lib/qingcloud/sdk/service/volume.rb, line 87 def create_volumes_input_validate(input) input.deep_stringify_keys! unless !input['request_params']['size'].nil? && !input['request_params']['size'].to_s.empty? raise ParameterRequiredError.new('size', 'CreateVolumesInput') end if input['request_params']['volume_type'] && !input['request_params']['volume_type'].to_s.empty? volume_type_valid_values = %w(0 1 2 3) unless volume_type_valid_values.include? input['request_params']['volume_type'].to_s raise ParameterValueNotAllowedError.new( 'volume_type', input['request_params']['volume_type'], volume_type_valid_values, ) end end end
delete_volumes_input_validate(input)
click to toggle source
# File lib/qingcloud/sdk/service/volume.rb, line 128 def delete_volumes_input_validate(input) input.deep_stringify_keys! unless !input['request_params']['volumes'].nil? && !input['request_params']['volumes'].to_s.empty? raise ParameterRequiredError.new('volumes', 'DeleteVolumesInput') end end
describe_volumes_input_validate(input)
click to toggle source
# File lib/qingcloud/sdk/service/volume.rb, line 165 def describe_volumes_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 if input['request_params']['volume_type'] && !input['request_params']['volume_type'].to_s.empty? volume_type_valid_values = %w(0 1 2 3) unless volume_type_valid_values.include? input['request_params']['volume_type'].to_s raise ParameterValueNotAllowedError.new( 'volume_type', input['request_params']['volume_type'], volume_type_valid_values, ) end end end
detach_volumes_input_validate(input)
click to toggle source
# File lib/qingcloud/sdk/service/volume.rb, line 214 def detach_volumes_input_validate(input) input.deep_stringify_keys! unless !input['request_params']['instance'].nil? && !input['request_params']['instance'].to_s.empty? raise ParameterRequiredError.new('instance', 'DetachVolumesInput') end unless !input['request_params']['volumes'].nil? && !input['request_params']['volumes'].to_s.empty? raise ParameterRequiredError.new('volumes', 'DetachVolumesInput') end end
modify_volume_attributes_input_validate(input)
click to toggle source
# File lib/qingcloud/sdk/service/volume.rb, line 250 def modify_volume_attributes_input_validate(input) input.deep_stringify_keys! unless !input['request_params']['volume'].nil? && !input['request_params']['volume'].to_s.empty? raise ParameterRequiredError.new('volume', 'ModifyVolumeAttributesInput') end end
resize_volumes_input_validate(input)
click to toggle source
# File lib/qingcloud/sdk/service/volume.rb, line 281 def resize_volumes_input_validate(input) input.deep_stringify_keys! unless !input['request_params']['size'].nil? && !input['request_params']['size'].to_s.empty? raise ParameterRequiredError.new('size', 'ResizeVolumesInput') end unless !input['request_params']['volumes'].nil? && !input['request_params']['volumes'].to_s.empty? raise ParameterRequiredError.new('volumes', 'ResizeVolumesInput') end end