Class: Fog::VcloudDirector::Compute::Disks
- Inherits:
-
Collection
- Object
- Collection
- Collection
- Fog::VcloudDirector::Compute::Disks
show all
- Defined in:
- lib/fog/vcloud_director/models/compute/disks.rb
Instance Method Summary
collapse
Methods inherited from Collection
#_item_list, #all, #get, #get_by_name, #get_everyone, #index, #with_item_list
Instance Method Details
#create(size) ⇒ Object
11
12
13
14
15
16
17
|
# File 'lib/fog/vcloud_director/models/compute/disks.rb', line 11
def create(size)
item_list unless @disks
data = Fog::VcloudDirector::Generators::Compute::Disks.new(@disks)
data.add_hard_disk(size)
response = service.put_disks(vm.id, data.disks)
service.process_task(response.body)
end
|
#get_by_id(item_id) ⇒ Object
19
20
21
22
23
|
# File 'lib/fog/vcloud_director/models/compute/disks.rb', line 19
def get_by_id(item_id)
item = item_list.find{ |i| i[:id] == item_id}
item.merge!(:all_disks => @disks, :vm => vm) if item
item
end
|
#item_list ⇒ Object
25
26
27
28
29
30
31
32
33
|
# File 'lib/fog/vcloud_director/models/compute/disks.rb', line 25
def item_list
@disks = service.get_vm_disks(vm.id).body
items = @disks[:disks]
items.each do |disk|
disk[:all_disks] = @disks
disk[:vm] = vm
end
items
end
|
#storage_only ⇒ Object
37
38
39
|
# File 'lib/fog/vcloud_director/models/compute/disks.rb', line 37
def storage_only
select {|d| d.resource_type == 17}
end
|