virtualbox-ws 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (128) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -1
  3. data/Gemfile +2 -1
  4. data/Gemfile.lock +2 -0
  5. data/LICENSE.md +5 -0
  6. data/README.md +57 -22
  7. data/lib/core_ext/string.rb +5 -0
  8. data/lib/virtualbox-ws.rb +2 -6
  9. data/lib/virtualbox/base.rb +31 -0
  10. data/lib/virtualbox/classes/additions_facility.rb +28 -0
  11. data/lib/virtualbox/classes/appliance.rb +51 -0
  12. data/lib/virtualbox/classes/audio_adapter.rb +33 -0
  13. data/lib/virtualbox/classes/bandwidth_control.rb +36 -0
  14. data/lib/virtualbox/classes/bandwidth_group.rb +29 -0
  15. data/lib/virtualbox/classes/bios_settings.rb +81 -0
  16. data/lib/virtualbox/classes/console.rb +201 -0
  17. data/lib/virtualbox/classes/dhcp_server.rb +52 -0
  18. data/lib/virtualbox/classes/directory.rb +27 -0
  19. data/lib/virtualbox/classes/display.rb +47 -0
  20. data/lib/virtualbox/classes/event.rb +32 -0
  21. data/lib/virtualbox/classes/event_listener.rb +14 -0
  22. data/lib/virtualbox/classes/event_source.rb +62 -0
  23. data/lib/virtualbox/classes/events/additions_state_changed_event.rb +7 -0
  24. data/lib/virtualbox/classes/events/bandwidth_group_changed_event.rb +13 -0
  25. data/lib/virtualbox/classes/events/can_show_window_event.rb +7 -0
  26. data/lib/virtualbox/classes/events/clipboard_mode_changed_event.rb +12 -0
  27. data/lib/virtualbox/classes/events/cpu_changed_event.rb +16 -0
  28. data/lib/virtualbox/classes/events/cpu_execution_cap_changed_event.rb +12 -0
  29. data/lib/virtualbox/classes/events/drag_and_drop_mode_changed_event.rb +12 -0
  30. data/lib/virtualbox/classes/events/event_source_changed_event.rb +17 -0
  31. data/lib/virtualbox/classes/events/extra_data_can_change_event.rb +20 -0
  32. data/lib/virtualbox/classes/events/extra_data_changed_event.rb +20 -0
  33. data/lib/virtualbox/classes/events/guest_keyboard_event.rb +12 -0
  34. data/lib/virtualbox/classes/events/guest_monitor_changed_event.rb +32 -0
  35. data/lib/virtualbox/classes/events/guest_mouse_event.rb +32 -0
  36. data/lib/virtualbox/classes/events/guest_property_changed_event.rb +20 -0
  37. data/lib/virtualbox/classes/events/host_pci_device_plug_event.rb +24 -0
  38. data/lib/virtualbox/classes/events/keyboard_leds_changed_event.rb +20 -0
  39. data/lib/virtualbox/classes/events/machine_data_changed_event.rb +12 -0
  40. data/lib/virtualbox/classes/events/machine_event.rb +12 -0
  41. data/lib/virtualbox/classes/events/machine_registered_event.rb +12 -0
  42. data/lib/virtualbox/classes/events/machine_state_changed_event.rb +12 -0
  43. data/lib/virtualbox/classes/events/medium_changed_event.rb +13 -0
  44. data/lib/virtualbox/classes/events/medium_registered_event.rb +20 -0
  45. data/lib/virtualbox/classes/events/mouse_capability_changed_event.rb +20 -0
  46. data/lib/virtualbox/classes/events/mouse_pointer_shape_changed_event.rb +36 -0
  47. data/lib/virtualbox/classes/events/nat_redirect_event.rb +40 -0
  48. data/lib/virtualbox/classes/events/network_adapter_changed_event.rb +13 -0
  49. data/lib/virtualbox/classes/events/parallel_port_changed_event.rb +13 -0
  50. data/lib/virtualbox/classes/events/reusable_event.rb +18 -0
  51. data/lib/virtualbox/classes/events/runtime_error_event.rb +20 -0
  52. data/lib/virtualbox/classes/events/serial_port_changed_event.rb +13 -0
  53. data/lib/virtualbox/classes/events/session_state_changed_event.rb +12 -0
  54. data/lib/virtualbox/classes/events/shared_folder_changed_event.rb +12 -0
  55. data/lib/virtualbox/classes/events/show_window_event.rb +12 -0
  56. data/lib/virtualbox/classes/events/snapshot_changed_event.rb +7 -0
  57. data/lib/virtualbox/classes/events/snapshot_deleted_event.rb +7 -0
  58. data/lib/virtualbox/classes/events/snapshot_event.rb +12 -0
  59. data/lib/virtualbox/classes/events/snapshot_taken_event.rb +7 -0
  60. data/lib/virtualbox/classes/events/state_changed_event.rb +12 -0
  61. data/lib/virtualbox/classes/events/storage_controller_changed_event.rb +7 -0
  62. data/lib/virtualbox/classes/events/storage_device_changed_event.rb +16 -0
  63. data/lib/virtualbox/classes/events/usb_controller_changed_event.rb +7 -0
  64. data/lib/virtualbox/classes/events/usb_device_state_changed_event.rb +17 -0
  65. data/lib/virtualbox/classes/events/v_box_svc_availability_chaged_event.rb +12 -0
  66. data/lib/virtualbox/classes/events/veto_event.rb +21 -0
  67. data/lib/virtualbox/classes/events/vrde_server_changed_event.rb +7 -0
  68. data/lib/virtualbox/classes/events/vrde_server_info_changed_event.rb +7 -0
  69. data/lib/virtualbox/classes/file.rb +73 -0
  70. data/lib/virtualbox/classes/fs_obj_info.rb +84 -0
  71. data/lib/virtualbox/classes/guest.rb +134 -0
  72. data/lib/virtualbox/classes/guest_directory.rb +7 -0
  73. data/lib/virtualbox/classes/guest_file.rb +7 -0
  74. data/lib/virtualbox/classes/guest_fs_obj_info.rb +7 -0
  75. data/lib/virtualbox/classes/guest_process.rb +7 -0
  76. data/lib/virtualbox/classes/guest_session.rb +232 -0
  77. data/lib/virtualbox/classes/host.rb +172 -0
  78. data/lib/virtualbox/classes/host_network_interface.rb +78 -0
  79. data/lib/virtualbox/classes/host_usb_device.rb +12 -0
  80. data/lib/virtualbox/classes/host_usb_device_filter.rb +16 -0
  81. data/lib/virtualbox/classes/keyboard.rb +29 -0
  82. data/lib/virtualbox/classes/machine.rb +922 -0
  83. data/lib/virtualbox/classes/managed_object_ref.rb +15 -0
  84. data/lib/virtualbox/classes/medium.rb +224 -0
  85. data/lib/virtualbox/classes/medium_format.rb +30 -0
  86. data/lib/virtualbox/classes/mouse.rb +37 -0
  87. data/lib/virtualbox/classes/nat_engine.rb +107 -0
  88. data/lib/virtualbox/classes/network_adapter.rb +171 -0
  89. data/lib/virtualbox/classes/parallel_port.rb +44 -0
  90. data/lib/virtualbox/classes/performance_collector.rb +51 -0
  91. data/lib/virtualbox/classes/performance_metric.rb +40 -0
  92. data/lib/virtualbox/classes/process.rb +67 -0
  93. data/lib/virtualbox/classes/progress.rb +111 -0
  94. data/lib/virtualbox/classes/serial_port.rb +60 -0
  95. data/lib/virtualbox/classes/session.rb +32 -0
  96. data/lib/virtualbox/classes/shared_folder.rb +32 -0
  97. data/lib/virtualbox/classes/snapshot.rb +44 -0
  98. data/lib/virtualbox/classes/storage_controller.rb +60 -0
  99. data/lib/virtualbox/classes/system_properties.rb +209 -0
  100. data/lib/virtualbox/classes/usb_controller.rb +58 -0
  101. data/lib/virtualbox/classes/usb_device.rb +56 -0
  102. data/lib/virtualbox/classes/usb_device_filter.rb +96 -0
  103. data/lib/virtualbox/classes/vfs_explorer.rb +51 -0
  104. data/lib/virtualbox/classes/virtual_box.rb +242 -0
  105. data/lib/virtualbox/classes/virtual_box_error_info.rb +29 -0
  106. data/lib/virtualbox/classes/virtual_system_description.rb +38 -0
  107. data/lib/virtualbox/classes/vrde_server.rb +80 -0
  108. data/lib/virtualbox/classes/vrde_server_info.rb +68 -0
  109. data/lib/virtualbox/classes/websession_manager.rb +33 -0
  110. data/lib/virtualbox/connection.rb +56 -31
  111. data/virtualbox-ws.gemspec +5 -4
  112. metadata +122 -20
  113. data/lib/virtualbox/classes/i_bios_settings.rb +0 -7
  114. data/lib/virtualbox/classes/i_console.rb +0 -16
  115. data/lib/virtualbox/classes/i_host.rb +0 -15
  116. data/lib/virtualbox/classes/i_host_network_interface.rb +0 -9
  117. data/lib/virtualbox/classes/i_machine.rb +0 -40
  118. data/lib/virtualbox/classes/i_managed_object_ref.rb +0 -6
  119. data/lib/virtualbox/classes/i_medium.rb +0 -13
  120. data/lib/virtualbox/classes/i_medium_format.rb +0 -6
  121. data/lib/virtualbox/classes/i_network_adapter.rb +0 -12
  122. data/lib/virtualbox/classes/i_session.rb +0 -6
  123. data/lib/virtualbox/classes/i_system_properties.rb +0 -18
  124. data/lib/virtualbox/classes/i_virtualbox.rb +0 -17
  125. data/lib/virtualbox/classes/i_web_session_manager.rb +0 -21
  126. data/lib/virtualbox/core_ext/string.rb +0 -9
  127. data/lib/virtualbox/enumerations.rb +0 -6
  128. data/lib/virtualbox/i_base.rb +0 -51
@@ -0,0 +1,78 @@
1
+ module VBox
2
+ class HostNetworkInterface < Base
3
+
4
+ attr_reader :ref
5
+
6
+ # Attributes
7
+
8
+ def name
9
+ VBox::WebService.send_request(:i_host_network_interface_get_name, _this)
10
+ end
11
+
12
+ def id
13
+ VBox::WebService.send_request(:i_host_network_interface_get_id, _this)
14
+ end
15
+
16
+ def network_name
17
+ VBox::WebService.send_request(:i_host_network_interface_get_network_name, _this)
18
+ end
19
+
20
+ def dhcp_enabled
21
+ VBox::WebService.send_request(:i_host_network_interface_get_dhcp_enabled, _this)
22
+ end
23
+
24
+ def ip_address
25
+ VBox::WebService.send_request(:i_host_network_interface_get_ip_address, _this)
26
+ end
27
+
28
+ def network_mask
29
+ VBox::WebService.send_request(:i_host_network_interface_get_network_mask, _this)
30
+ end
31
+
32
+ def ipv6_supported
33
+ VBox::WebService.send_request(:i_host_network_interface_get_ipv6_supported, _this)
34
+ end
35
+
36
+ def ipv6_address
37
+ VBox::WebService.send_request(:i_host_network_interface_get_ipv6_address, _this)
38
+ end
39
+
40
+ def ipv6_network_mask_prefix_length
41
+ VBox::WebService.send_request(:i_host_network_interface_get_ipv6_network_mask_prefix_length, _this)
42
+ end
43
+
44
+ def hardware_address
45
+ VBox::WebService.send_request(:i_host_network_interface_get_hardware_address, _this)
46
+ end
47
+
48
+ def medium_type
49
+ VBox::WebService.send_request(:i_host_network_interface_get_medium_type, _this)
50
+ end
51
+
52
+ def status
53
+ VBox::WebService.send_request(:i_host_network_interface_get_status, _this)
54
+ end
55
+
56
+ def interface_type
57
+ VBox::WebService.send_request(:i_host_network_interface_get_interface_type, _this)
58
+ end
59
+
60
+ # Methods
61
+
62
+ def dhcp_rediscover
63
+ VBox::WebService.send_request(:i_host_network_interface_dhcp_rediscover, _this)
64
+ end
65
+
66
+ def enable_dynamic_ip_config
67
+ VBox::WebService.send_request(:i_host_network_interface_enable_dynamic_ip_config, _this)
68
+ end
69
+
70
+ def enable_static_ip_config
71
+ VBox::WebService.send_request(:i_host_network_interface_enable_static_ip_config, _this)
72
+ end
73
+
74
+ def enable_static_ip_config_v6
75
+ VBox::WebService.send_request(:i_host_network_interface_enable_static_ip_config_v6, _this)
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,12 @@
1
+ module VBox
2
+ class HostUSBDevice < USBDevice
3
+
4
+ attr_reader :ref
5
+
6
+ # Attributes
7
+
8
+ def state
9
+ VBox::WebService.send_request(:i_host_usb_device_get_state, _this)
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,16 @@
1
+ module VBox
2
+ class HostUSBDeviceFilter < USBDeviceFilter
3
+
4
+ attr_reader :ref
5
+
6
+ # Attributes
7
+
8
+ def action
9
+ VBox::WebService.send_request(:i_host_usb_device_filter_get_action, _this)
10
+ end
11
+
12
+ def action=(action)
13
+ VBox::WebService.send_request(:i_host_usb_device_filter_set_action, _this.merge(:action => action))
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,29 @@
1
+ module VBox
2
+ class Keyboard < Base
3
+
4
+ attr_reader :ref
5
+
6
+ # Attributes
7
+
8
+ def event_source
9
+ event_source = VBox::WebService.send_request(:i_keyboard_get_event_source, _this)
10
+ VBox::EventSource.new(event_source)
11
+ end
12
+
13
+ # Methods
14
+
15
+ def put_cad
16
+ VBox::WebService.send_request(:i_keyboard_get_put_cad, _this)
17
+ end
18
+
19
+ def put_scancode(args={})
20
+ ensure_hash(args)
21
+ VBox::WebService.send_request(:i_keyboard_get_put_scancode, _this.merge(args))
22
+ end
23
+
24
+ def put_scancodes(args={})
25
+ ensure_hash(args)
26
+ VBox::WebService.send_request(:i_keyboard_get_put_scancodes, _this.merge(args))
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,922 @@
1
+ module VBox
2
+ class Machine < Base
3
+
4
+ attr_reader :ref
5
+
6
+ # Attributes
7
+
8
+ def parent
9
+ parent = VBox::WebService.send_request(:i_machine_get_parent, _this)
10
+ VBox::Machine.new(parent)
11
+ end
12
+
13
+ def accessible
14
+ VBox::WebService.send_request(:i_machine_get_accessible, _this)
15
+ end
16
+
17
+ def access_error
18
+ access_error = VBox::WebService.send_request(:i_machine_get_access_error, _this)
19
+ VBox::VirtualBoxErrorInfo.new(access_error)
20
+ end
21
+
22
+ def name
23
+ VBox::WebService.send_request(:i_machine_get_name, _this)
24
+ end
25
+
26
+ def name=(name)
27
+ VBox::WebService.send_request(:i_machine_set_name, _this.merge(:name => name))
28
+ end
29
+
30
+ def description
31
+ VBox::WebService.send_request(:i_machine_get_description, _this)
32
+ end
33
+
34
+ def description=(description)
35
+ VBox::WebService.send_request(:i_machine_set_description, _this.merge(:description => description))
36
+ end
37
+
38
+ def id
39
+ VBox::WebService.send_request(:i_machine_get_id, _this)
40
+ end
41
+
42
+ def groups
43
+ VBox::WebService.send_request(:i_machine_get_groups, _this)
44
+ end
45
+
46
+ def groups=(groups)
47
+ VBox::WebService.send_request(:i_machine_set_groups, _this.merge(:groups => groups))
48
+ end
49
+
50
+ def os_type_id
51
+ VBox::WebService.send_request(:i_machine_get_os_type_id, _this)
52
+ end
53
+
54
+ def os_type_id=(os_type_id)
55
+ VBox::WebService.send_request(:i_machine_set_os_type_id, _this.merge('OSTypeId' => os_type_id))
56
+ end
57
+
58
+ def hardware_version
59
+ VBox::WebService.send_request(:i_machine_get_hardware_version, _this)
60
+ end
61
+
62
+ def hardware_version=(hardware_version)
63
+ VBox::WebService.send_request(:i_machine_set_hardware_version,
64
+ _this.merge(:hardware_version => hardware_version))
65
+ end
66
+
67
+ def hardware_uuid
68
+ VBox::WebService.send_request(:i_machine_get_hardware_uuid, _this)
69
+ end
70
+
71
+ def hardware_uuid=(hardware_uuid)
72
+ VBox::WebService.send_request(:i_machine_set_hardware_uuid, _this.merge(:hardware_uuid => hardware_uuid))
73
+ end
74
+
75
+ def cpu_count
76
+ VBox::WebService.send_request(:i_machine_get_cpu_count, _this)
77
+ end
78
+
79
+ def cpu_count=(cpu_count)
80
+ VBox::WebService.send_request(:i_machine_set_cpu_count, _this.merge('CPUCount' => cpu_count))
81
+ end
82
+
83
+ def cpu_hot_plug_enabled
84
+ VBox::WebService.send_request(:i_machine_get_cpu_hot_plug_enabled, _this)
85
+ end
86
+
87
+ def cpu_hot_plug_enabled=(cpu_hot_plug_enabled)
88
+ VBox::WebService.send_request(:i_machine_set_cpu_hot_plug_enabled,
89
+ _this.merge('CPUHotPlugEnabled' => cpu_hot_plug_enabled))
90
+ end
91
+
92
+ def cpu_execution_cap
93
+ VBox::WebService.send_request(:i_machine_get_cpu_execution_cap, _this)
94
+ end
95
+
96
+ def cpu_execution_cap=(cpu_execution_cap)
97
+ VBox::WebService.send_request(:i_machine_set_cpu_execution_cap,
98
+ _this.merge('CPUExecutionCap' => cpu_execution_cap))
99
+ end
100
+
101
+ def memory_size
102
+ VBox::WebService.send_request(:i_machine_get_memory_size, _this)
103
+ end
104
+
105
+ def memory_size=(memory_size)
106
+ VBox::WebService.send_request(:i_machine_set_memory_size, _this.merge(:memory_size => memory_size))
107
+ end
108
+
109
+ def memory_balloon_size
110
+ VBox::WebService.send_request(:i_machine_get_memory_balloon_size, _this)
111
+ end
112
+
113
+ def memory_balloon_size=(memory_balloon_size)
114
+ VBox::WebService.send_request(:i_machine_set_memory_balloon_size,
115
+ _this.merge(:memory_balloon_size => memory_balloon_size))
116
+ end
117
+
118
+ def page_fusion_enabled
119
+ VBox::WebService.send_request(:i_machine_get_page_fusion_enabled, _this)
120
+ end
121
+
122
+ def page_fusion_enabled=(page_fusion_enabled)
123
+ VBox::WebService.send_request(:i_machine_set_page_fusion_enabled,
124
+ _this.merge(:page_fusion_enabled => page_fusion_enabled))
125
+ end
126
+
127
+ def vram_size
128
+ VBox::WebService.send_request(:i_machine_get_vram_size, _this)
129
+ end
130
+
131
+ def vram_size=(vram_size)
132
+ VBox::WebService.send_request(:i_machine_set_vram_size, _this.merge('VRAMSize' => vram_size))
133
+ end
134
+
135
+ def accelerate_3d_enabled
136
+ VBox::WebService.send_request(:i_machine_get_accelerate_3d_enabled, _this)
137
+ end
138
+
139
+ def accelerate_3d_enabled=(accelerate_3d_enabled)
140
+ VBox::WebService.send_request(:i_machine_set_accelerate_3d_enabled,
141
+ _this.merge(:accelerate_3d_enabled => accelerate_3d_enabled))
142
+ end
143
+
144
+ def accelerate_2d_video_enabled
145
+ VBox::WebService.send_request(:i_machine_get_accelerate_2d_video_enabled, _this)
146
+ end
147
+
148
+ def accelerate_2d_video_enabled=(accelerate_2d_video_enabled)
149
+ VBox::WebService.send_request(:i_machine_set_accelerate_2d_video_enabled,
150
+ _this.merge(:accelerate_2d_video_enabled => accelerate_2d_video_enabled))
151
+ end
152
+
153
+ def monitor_count
154
+ VBox::WebService.send_request(:i_machine_get_monitor_count, _this)
155
+ end
156
+
157
+ def monitor_count=(monitor_count)
158
+ VBox::WebService.send_request(:i_machine_set_monitor_count, _this.merge(:monitor_count => monitor_count))
159
+ end
160
+
161
+ def video_capture_enabled
162
+ VBox::WebService.send_request(:i_machine_get_video_capture_enabled, _this)
163
+ end
164
+
165
+ def video_capture_enabled=(video_capture_enabled)
166
+ VBox::WebService.send_request(:i_machine_set_video_capture_enabled,
167
+ _this.merge('VideoCaptureEnabled' => video_capture_enabled))
168
+ end
169
+
170
+ def video_capture_file
171
+ VBox::WebService.send_request(:i_machine_get_video_capture_file, _this)
172
+ end
173
+
174
+ def video_capture_file=(video_capture_file)
175
+ VBox::WebService.send_request(:i_machine_set_video_capture_file,
176
+ _this.merge('VideoCaptureFile' => video_capture_file))
177
+ end
178
+
179
+ def video_capture_width
180
+ VBox::WebService.send_request(:i_machine_get_video_capture_width, _this)
181
+ end
182
+
183
+ def video_capture_width=(video_capture_width)
184
+ VBox::WebService.send_request(:i_machine_set_video_capture_width,
185
+ _this.merge('VideoCaptureWidth' => video_capture_width))
186
+ end
187
+
188
+ def video_capture_height
189
+ VBox::WebService.send_request(:i_machine_get_video_capture_height, _this)
190
+ end
191
+
192
+ def video_capture_height=(video_capture_height)
193
+ VBox::WebService.send_request(:i_machine_set_video_capture_height,
194
+ _this.merge('VideoCaptureHeight' => video_capture_height))
195
+ end
196
+
197
+ def bios_settings
198
+ bios_settings = VBox::WebService.send_request(:i_machine_get_bios_settings, _this)
199
+ VBox::BIOSSettings.new(bios_settings)
200
+ end
201
+
202
+ def firmware_type
203
+ VBox::WebService.send_request(:i_machine_get_firmware_type, _this)
204
+
205
+ end
206
+
207
+ def firmware_type=(firmware_type)
208
+ VBox::WebService.send_request(:i_machine_set_firmware_type, _this.merge(:firmware_type => firmware_type))
209
+ end
210
+
211
+ def pointing_hid_type
212
+ VBox::WebService.send_request(:i_machine_get_pointing_hid_type, _this)
213
+ end
214
+
215
+ def pointing_hid_type=(pointing_hid_type)
216
+ VBox::WebService.send_request(:i_machine_set_pointing_hid_type,
217
+ _this.merge(:pointing_hid_type => pointing_hid_type))
218
+ end
219
+
220
+ def keyboard_hid_type
221
+ VBox::WebService.send_request(:i_machine_get_keyboard_hid_type, _this)
222
+ end
223
+
224
+ def keyboard_hid_type=(keyboard_hid_type)
225
+ VBox::WebService.send_request(:i_machine_set_keyboard_hid_type,
226
+ _this.merge(:keyboard_hid_type => keyboard_hid_type))
227
+ end
228
+
229
+ def hpet_enabled
230
+ VBox::WebService.send_request(:i_machine_get_hpet_enabled, _this)
231
+ end
232
+
233
+ def hpet_enabled=(hpet_enabled)
234
+ VBox::WebService.send_request(:i_machine_set_hpet_enabled, _this.merge('HPETEnabled' => hpet_enabled))
235
+ end
236
+
237
+ def chipset_type
238
+ VBox::WebService.send_request(:i_machine_get_chipset_type, _this)
239
+ end
240
+
241
+ def chipset_type=(chipset_type)
242
+ VBox::WebService.send_request(:i_machine_set_chipset_type, _this.merge(:chipset_type => chipset_type))
243
+ end
244
+
245
+ def snapshot_folder
246
+ VBox::WebService.send_request(:i_machine_get_snapshot_folder, _this)
247
+ end
248
+
249
+ def snapshot_folder=(snapshot_folder)
250
+ VBox::WebService.send_request(:i_machine_set_snapshot_folder, _this.merge(:snapshot_folder => snapshot_folder))
251
+ end
252
+
253
+ def vrde_server
254
+ vrde_server = VBox::WebService.send_request(:i_machine_get_vrde_server, _this)
255
+ VBox::VRDEServer.new(vrde_server)
256
+ end
257
+
258
+ def emaulated_usb_webcamera_enabled
259
+ VBox::WebService.send_request(:i_machine_get_emaulated_usb_webcamera_enabled, _this)
260
+ end
261
+
262
+ def emaulated_usb_webcamera_enabled=(emaulated_usb_webcamera_enabled)
263
+ VBox::WebService.send_request(:i_machine_set_emaulated_usb_webcamera_enabled,
264
+ _this.merge(:emaulated_usb_webcamera_enabled => emaulated_usb_webcamera_enabled))
265
+ end
266
+
267
+ def emaulated_usb_card_reader_enabled
268
+ VBox::WebService.send_request(:i_machine_get_emaulated_usb_card_reader_enabled, _this)
269
+ end
270
+
271
+ def emaulated_usb_card_reader_enabled=(emaulated_usb_card_reader_enabled)
272
+ VBox::WebService.send_request(:i_machine_set_emaulated_usb_card_reader_enabled,
273
+ _this.merge(:emaulated_usb_card_reader_enabled =>
274
+ emaulated_usb_card_reader_enabled))
275
+ end
276
+
277
+ def medium_attachments
278
+ medium_attachments = VBox::WebService.send_request(:i_machine_get_medium_attachments, _this)
279
+ medium_attachments.to_a.map do |medium_attachment|
280
+ VBox::MediumAttachment.new(medium_attachment)
281
+ end
282
+ end
283
+
284
+ def usb_controller
285
+ usb_controller = VBox::WebService.send_request(:i_machine_get_usb_controller, _this)
286
+ VBox::USBController.new(usb_controller)
287
+ end
288
+
289
+ def audio_adapter
290
+ audio_adapter = VBox::WebService.send_request(:i_machine_get_audio_adapter, _this)
291
+ VBox::AudioAdapter.new(audio_adapter)
292
+ end
293
+
294
+ def storage_controllers
295
+ storage_controllers = VBox::WebService.send_request(:i_machine_get_storage_controllers, _this)
296
+ storage_controllers.to_a.map do |storage_controller|
297
+ VBox::StorageController.new(storage_controller)
298
+ end
299
+ end
300
+
301
+ def settings_file_path
302
+ VBox::WebService.send_request(:i_machine_get_settings_file_path, _this)
303
+ end
304
+
305
+ def settings_modified
306
+ VBox::WebService.send_request(:i_machine_get_settings_modified, _this)
307
+ end
308
+
309
+ def session_state
310
+ VBox::WebService.send_request(:i_machine_get_session_state, _this)
311
+ end
312
+
313
+ def session_type
314
+ VBox::WebService.send_request(:i_machine_get_session_type, _this)
315
+ end
316
+
317
+ def session_pid
318
+ VBox::WebService.send_request(:i_machine_get_session_pid, _this)
319
+ end
320
+
321
+ def state
322
+ VBox::WebService.send_request(:i_machine_get_state, _this)
323
+ end
324
+
325
+ def last_state_change
326
+ VBox::WebService.send_request(:i_machine_get_last_state_change, _this)
327
+ end
328
+
329
+ def state_file_path
330
+ VBox::WebService.send_request(:i_machine_get_state_file_path, _this)
331
+ end
332
+
333
+ def log_folder
334
+ VBox::WebService.send_request(:i_machine_get_log_folder, _this)
335
+ end
336
+
337
+ def current_snapshot
338
+ current_snapshot = VBox::WebService.send_request(:i_machine_get_current_snapshot, _this)
339
+ VBox::Snapshot.new(current_snapshot)
340
+ end
341
+
342
+ def snapshot_count
343
+ VBox::WebService.send_request(:i_machine_get_snapshot_count, _this)
344
+ end
345
+
346
+ def current_state_modified
347
+ VBox::WebService.send_request(:i_machine_get_current_state_modified, _this)
348
+ end
349
+
350
+ def shared_folders
351
+ shared_folders = VBox::WebService.send_request(:i_machine_get_shared_folders, _this)
352
+ shared_folders.to_a.map do |shared_folder|
353
+ VBox::SharedFolder.new(shared_folder)
354
+ end
355
+ end
356
+
357
+ def clipboard_mode
358
+ VBox::WebService.send_request(:i_machine_get_clipboard_mode, _this)
359
+ end
360
+
361
+ def clipboard_mode=(clipboard_mode)
362
+ VBox::WebService.send_request(:i_machine_set_clipboard_mode, _this.merge(:clipboard_mode => clipboard_mode))
363
+ end
364
+
365
+ def drag_and_drop_mode
366
+ VBox::WebService.send_request(:i_machine_get_drag_and_drop_mode, _this)
367
+ end
368
+
369
+ def drag_and_drop_mode=(drag_and_drop_mode)
370
+ VBox::WebService.send_request(:i_machine_set_drag_and_drop_mode,
371
+ _this.merge(:drag_and_drop_mode => drag_and_drop_mode))
372
+ end
373
+
374
+ def guest_property_notification_patterns
375
+ VBox::WebService.send_request(:i_machine_get_guest_property_notification_patterns, _this)
376
+ end
377
+
378
+ def guest_property_notification_patterns=(guest_property_notification_patterns)
379
+ VBox::WebService.send_request(:i_machine_set_guest_property_notification_patterns,
380
+ _this.merge(:guest_property_notification_patterns =>
381
+ guest_property_notification_patterns))
382
+ end
383
+
384
+ def teleporter_enabled
385
+ VBox::WebService.send_request(:i_machine_get_teleporter_enabled, _this)
386
+ end
387
+
388
+ def teleporter_enabled=(teleporter_enabled)
389
+ VBox::WebService.send_request(:i_machine_set_teleporter_enabled,
390
+ _this.merge(:teleporter_enabled => teleporter_enabled))
391
+ end
392
+
393
+ def teleporter_port
394
+ VBox::WebService.send_request(:i_machine_get_teleporter_port, _this)
395
+ end
396
+
397
+ def teleporter_port=(teleporter_port)
398
+ VBox::WebService.send_request(:i_machine_set_teleporter_port,
399
+ _this.merge(:teleporter_port => teleporter_port))
400
+ end
401
+
402
+ def teleporter_address
403
+ VBox::WebService.send_request(:i_machine_get_teleporter_address, _this)
404
+ end
405
+
406
+ def teleporter_address=(teleporter_address)
407
+ VBox::WebService.send_request(:i_machine_set_teleporter_address,
408
+ _this.merge(:teleporter_address => teleporter_address))
409
+ end
410
+
411
+ def teleporter_password
412
+ VBox::WebService.send_request(:i_machine_get_teleporter_password, _this)
413
+ end
414
+
415
+ def teleporter_password=(teleporter_password)
416
+ VBox::WebService.send_request(:i_machine_set_teleporter_password,
417
+ _this.merge(:teleporter_password => teleporter_password))
418
+ end
419
+
420
+ def fault_tolerance_state
421
+ VBox::WebService.send_request(:i_machine_get_fault_tolerance_state, _this)
422
+ end
423
+
424
+ def fault_tolerance_state=(fault_tolerance_state)
425
+ VBox::WebService.send_request(:i_machine_set_fault_tolerance_state,
426
+ _this.merge(:fault_tolerance_state => fault_tolerance_state))
427
+ end
428
+
429
+ def fault_tolerance_port
430
+ VBox::WebService.send_request(:i_machine_get_fault_tolerance_port, _this)
431
+ end
432
+
433
+ def fault_tolerance_port=(fault_tolerance_port)
434
+ VBox::WebService.send_request(:i_machine_set_fault_tolerance_port,
435
+ _this.merge(:fault_tolerance_port => fault_tolerance_port))
436
+ end
437
+
438
+ def fault_tolerance_address
439
+ VBox::WebService.send_request(:i_machine_get_fault_tolerance_address, _this)
440
+ end
441
+
442
+ def fault_tolerance_address=(fault_tolerance_address)
443
+ VBox::WebService.send_request(:i_machine_set_fault_tolerance_address,
444
+ _this.merge(:fault_tolerance_address => fault_tolerance_address))
445
+ end
446
+
447
+ def fault_tolerance_password
448
+ VBox::WebService.send_request(:i_machine_get_fault_tolerance_password, _this)
449
+ end
450
+
451
+ def fault_tolerance_password=(fault_tolerance_password)
452
+ VBox::WebService.send_request(:i_machine_set_fault_tolerance_password,
453
+ _this.merge(:fault_tolerance_password => fault_tolerance_password))
454
+ end
455
+
456
+ def fault_tolerance_sync_interval
457
+ VBox::WebService.send_request(:i_machine_get_fault_tolerance_sync_interval, _this)
458
+ end
459
+
460
+ def fault_tolerance_sync_interval=(fault_tolerance_sync_interval)
461
+ VBox::WebService.send_request(:i_machine_set_fault_tolerance_sync_interval,
462
+ _this.merge(:fault_tolerance_sync_interval => fault_tolerance_sync_interval))
463
+ end
464
+
465
+ def rtc_use_utc
466
+ VBox::WebService.send_request(:i_machine_get_rtc_use_utc, _this)
467
+ end
468
+
469
+ def rtc_use_utc=(rtc_use_utc)
470
+ VBox::WebService.send_request(:i_machine_set_rtc_use_utc, _this.merge('RTCUseUTC' => rtc_use_utc))
471
+ end
472
+
473
+ def io_cache_enabled
474
+ VBox::WebService.send_request(:i_machine_get_io_cache_enabled, _this)
475
+ end
476
+
477
+ def io_cache_enabled=(io_cache_enabled)
478
+ VBox::WebService.send_request(:i_machine_set_io_cache_enabled, _this.merge('IOCacheEnabled' => io_cache_enabled))
479
+ end
480
+
481
+ def io_cache_size
482
+ VBox::WebService.send_request(:i_machine_get_io_cache_size, _this)
483
+ end
484
+
485
+ def io_cache_size=(io_cache_size)
486
+ VBox::WebService.send_request(:i_machine_set_io_cache_size, _this.merge('IOCacheSize' => io_cache_size))
487
+ end
488
+
489
+ def pci_device_assignments
490
+ VBox::WebService.send_request(:i_machine_get_pci_device_assignments, _this)
491
+ end
492
+
493
+ def bandwidth_control
494
+ bandwidth_control = VBox::WebService.send_request(:i_machine_get_bandwidth_control, _this)
495
+ VBox::BandwidthControl.new(bandwidth_control)
496
+ end
497
+
498
+ def tracing_enabled
499
+ VBox::WebService.send_request(:i_machine_get_tracing_enabled, _this)
500
+ end
501
+
502
+ def tracing_enabled=(tracing_enabled)
503
+ VBox::WebService.send_request(:i_machine_set_tracing_enabled, _this.merge(:tracing_enabled => tracing_enabled))
504
+ end
505
+
506
+ def tracing_config
507
+ VBox::WebService.send_request(:i_machine_get_tracing_config, _this)
508
+ end
509
+
510
+ def tracing_config=(tracing_config)
511
+ VBox::WebService.send_request(:i_machine_set_tracing_config, _this.merge(:tracing_config => tracing_config))
512
+ end
513
+
514
+ def allow_tracing_to_access_vm
515
+ VBox::WebService.send_request(:i_machine_get_allow_tracing_to_access_vm, _this)
516
+ end
517
+
518
+ def allow_tracing_to_access_vm=(allow_tracing_to_access_vm)
519
+ VBox::WebService.send_request(:i_machine_set_allow_tracing_to_access_vm,
520
+ _this.merge(:allow_tracing_to_access_vm => allow_tracing_to_access_vm))
521
+ end
522
+
523
+ def autostart_enabled
524
+ VBox::WebService.send_request(:i_machine_get_autostart_enabled, _this)
525
+ end
526
+
527
+ def autostart_enabled=(autostart_enabled)
528
+ VBox::WebService.send_request(:i_machine_set_autostart_enabled,
529
+ _this.merge(:autostart_enabled => autostart_enabled))
530
+ end
531
+
532
+ def autostart_delay
533
+ VBox::WebService.send_request(:i_machine_get_autostart_delay, _this)
534
+ end
535
+
536
+ def autostart_delay=(autostart_delay)
537
+ VBox::WebService.send_request(:i_machine_set_autostart_delay, _this.merge(:autostart_delay => autostart_delay))
538
+ end
539
+
540
+ def autostop_type
541
+ VBox::WebService.send_request(:i_machine_get_autostop_type, _this)
542
+ end
543
+
544
+ def autostop_type=(autostop_type)
545
+ VBox::WebService.send_request(:i_machine_set_autostop_type, _this.merge(:autostop_type => autostop_type))
546
+ end
547
+
548
+ # Methods
549
+
550
+ def add_storage_controller(args={})
551
+ ensure_hash(args)
552
+ storage_controller = VBox::WebService.send_request(:i_machine_add_storage_controller, _this.merge(args))
553
+ VBox::StorageController.new(storage_controller)
554
+ end
555
+
556
+ def attach_device(args={})
557
+ ensure_hash(args)
558
+ args[:medium] = args[:medium].ref if args.has_key?(:medium) & args[:medium].respond_to?(:ref)
559
+ VBox::WebService.send_request(:i_machine_attach_device, _this.merge(args))
560
+ end
561
+
562
+ def attach_device_without_medium(args={})
563
+ ensure_hash(args)
564
+ VBox::WebService.send_request(:i_machine_attach_device_without_medium, _this.merge(args))
565
+ end
566
+
567
+ def attach_host_pci_device(args={})
568
+ ensure_hash(args)
569
+ VBox::WebService.send_request(:i_machine_attach_host_pci_device, _this.merge(args))
570
+ end
571
+
572
+ def can_show_console_window(args={})
573
+ ensure_hash(args)
574
+ VBox::WebService.send_request(:i_machine_can_show_console_window, _this.merge(args))
575
+ end
576
+
577
+ def clone_to(args={})
578
+ ensure_hash(args)
579
+ args[:target] = args[:target].ref if args.has_key?(:target) & args[:target].respond_to?(:ref)
580
+ progress = VBox::WebService.send_request(:i_machine_clone_to, _this.merge(args))
581
+ VBox::Progress.new(progress)
582
+ end
583
+
584
+ def create_shared_folder(args={})
585
+ ensure_hash(args)
586
+ VBox::WebService.send_request(:i_machine_create_shared_folder, _this.merge(args))
587
+ end
588
+
589
+ def delete(args={})
590
+ ensure_hash(args)
591
+ if args.has_key?(:a_media)
592
+ args[:a_media].map! do |a_medium|
593
+ a_medium.respond_to?(:ref) ? a_medium.ref : a_medium
594
+ end
595
+ end
596
+ progress = VBox::WebService.send_request(:i_machine_delete, _this.merge(args))
597
+ VBox::Progress.new(progress)
598
+ end
599
+
600
+ def delete_guest_property(args={})
601
+ ensure_hash(args)
602
+ VBox::WebService.send_request(:i_machine_delete_guest_property, _this.merge(args))
603
+ end
604
+
605
+ def detach_device(args={})
606
+ ensure_hash(args)
607
+ VBox::WebService.send_request(:i_machine_detach_device, _this.merge(args))
608
+ end
609
+
610
+ def detach_host_pci_device(args={})
611
+ ensure_hash(args)
612
+ VBox::WebService.send_request(:i_machine_detach_host_pci_device, _this.merge(args))
613
+ end
614
+
615
+ def discard_settings(args={})
616
+ ensure_hash(args)
617
+ VBox::WebService.send_request(:i_machine_discard_settings, _this.merge(args))
618
+ end
619
+
620
+ def enumerate_guest_properties(args={})
621
+ ensure_hash(args)
622
+ VBox::WebService.send_request(:i_machine_enumerate_guest_properties, _this.merge(args))
623
+ end
624
+
625
+ def export(args={})
626
+ ensure_hash(args)
627
+ args[:a_appliance] = args[:a_appliance].ref if args.has_key?(:a_appliance) & args[:a_appliance].respond_to?(:ref)
628
+ virtual_system_description = VBox::WebService.send_request(:i_machine_export, _this.merge(args))
629
+ VBox::VirtualSystemDescription.new(virtual_system_description)
630
+ end
631
+
632
+ def find_snapshot(args={})
633
+ ensure_hash(args)
634
+ snapshot = VBox::WebService.send_request(:i_machine_find_snapshot, _this.merge(args))
635
+ VBox::Snapshot.new(snapshot)
636
+ end
637
+
638
+ def get_boot_order(args={})
639
+ ensure_hash(args)
640
+ VBox::WebService.send_request(:i_machine_get_boot_order, _this.merge(args))
641
+ end
642
+
643
+ def get_cpu_id_leaf(args={})
644
+ ensure_hash(args)
645
+ VBox::WebService.send_request(:i_machine_get_cpu_id_leaf, _this.merge(args))
646
+ end
647
+
648
+ def get_cpu_property(args={})
649
+ ensure_hash(args)
650
+ VBox::WebService.send_request(:i_machine_get_cpu_property, _this.merge(args))
651
+ end
652
+
653
+ def get_cpu_status(args={})
654
+ ensure_hash(args)
655
+ VBox::WebService.send_request(:i_machine_get_cpu_status, _this.merge(args))
656
+ end
657
+
658
+ def get_extra_data(args={})
659
+ ensure_hash(args)
660
+ VBox::WebService.send_request(:i_machine_get_extra_data, _this.merge(args))
661
+ end
662
+
663
+ def get_extra_data_keys(args={})
664
+ ensure_hash(args)
665
+ VBox::WebService.send_request(:i_machine_get_exrta_data_keys, _this.merge(args))
666
+ end
667
+
668
+ def get_guest_property(args={})
669
+ ensure_hash(args)
670
+ VBox::WebService.send_request(:i_machine_get_guest_property, _this.merge(args))
671
+ end
672
+
673
+ def get_guest_property_timestamp(args={})
674
+ ensure_hash(args)
675
+ VBox::WebService.send_request(:i_machine_get_guest_property_timestamp, _this.merge(args))
676
+ end
677
+
678
+ def get_guest_property_value(args={})
679
+ ensure_hash(args)
680
+ VBox::WebService.send_request(:i_machine_get_guest_property_value, _this.merge(args))
681
+ end
682
+
683
+ def get_hw_virt_ex_property(args={})
684
+ ensure_hash(args)
685
+ VBox::WebService.send_request(:i_machine_get_hw_virt_ex_property, _this.merge(args))
686
+ end
687
+
688
+ def get_medium(args={})
689
+ ensure_hash(args)
690
+ medium = VBox::WebService.send_request(:i_machine_get_medium, _this.merge(args))
691
+ VBox::Medium.new(medium)
692
+ end
693
+
694
+ def get_medium_attachment(args={})
695
+ ensure_hash(args)
696
+ medium_attachment = VBox::WebService.send_request(:i_machine_get_medium_attachment, _this.merge(args))
697
+ VBox::Medium.new(medium_attachment)
698
+ end
699
+
700
+ def get_medium_attachments_of_controller(args={})
701
+ ensure_hash(args)
702
+ medium_attachments_of_controller = VBox::WebService.send_request(:i_machine_get_medium_attachments_of_controller,
703
+ _this.merge(args))
704
+ medium_attachments_of_controller.to_a.map do |medium_attachment_of_controller|
705
+ VBox::Medium.new(medium_attachment_of_controller)
706
+ end
707
+ end
708
+
709
+ def get_network_adapter(args={})
710
+ ensure_hash(args)
711
+ network_adapter = VBox::WebService.send_request(:i_machine_get_network_adapter, _this.merge(args))
712
+ VBox::NetworkAdapter.new(network_adapter)
713
+ end
714
+
715
+ def get_parallel_port(args={})
716
+ ensure_hash(args)
717
+ parallel_port = VBox::WebService.send_request(:i_machine_get_parallel_port, _this.merge(args))
718
+ VBox::ParallelPort.new(parallel_port)
719
+ end
720
+
721
+ def get_serial_port(args={})
722
+ ensure_hash(args)
723
+ serial = VBox::WebService.send_request(:i_machine_get_serial_port, _this.merge(args))
724
+ VBox::SerialPort.new(serial)
725
+ end
726
+
727
+ def get_storage_controller_by_instance(args={})
728
+ ensure_hash(args)
729
+ storage_controller = VBox::WebService.send_request(:i_machine_get_storage_controller_by_instance,
730
+ _this.merge(args))
731
+ VBox::StorageController.new(storage_controller)
732
+ end
733
+
734
+ def get_storage_controller_by_name(args={})
735
+ ensure_hash(args)
736
+ storage_controller = VBox::WebService.send_request(:i_machine_get_storage_controller_by_name, _this.merge(args))
737
+ VBox::StorageController.new(storage_controller)
738
+ end
739
+
740
+ def hot_plug_cpu(args={})
741
+ ensure_hash(args)
742
+ VBox::WebService.send_request(:i_machine_hot_plug_cpu, _this.merge(args))
743
+ end
744
+
745
+ def hot_unplug_cpu(args={})
746
+ ensure_hash(args)
747
+ VBox::WebService.send_request(:i_machine_hot_unplug_cpu, _this.merge(args))
748
+ end
749
+
750
+ def launch_vm_process(args={})
751
+ ensure_hash(args)
752
+ args[:session] = args[:session].ref if args.has_key?(:session) & args[:session].respond_to?(:ref)
753
+ progress = VBox::WebService.send_request(:i_machine_launch_vm_process, _this.merge(args))
754
+ VBox::Progress.new(progress)
755
+ end
756
+
757
+ def lock_machine(args={})
758
+ ensure_hash(args)
759
+ args[:session] = args[:session].ref if args.has_key?(:session) & args[:session].respond_to?(:ref)
760
+ VBox::WebService.send_request(:i_machine_lock_machine, _this.merge(args))
761
+ end
762
+
763
+ def mount_medium(args={})
764
+ ensure_hash(args)
765
+ args[:medium] = args[:medium].ref if args.has_key?(:medium) & args[:medium].respond_to?(:ref)
766
+ VBox::WebService.send_request(:i_machine_mount_medium, _this.merge(args))
767
+ end
768
+
769
+ def non_rotational_device(args={})
770
+ ensure_hash(args)
771
+ VBox::WebService.send_request(:i_machine_non_rotational_device, _this.merge(args))
772
+ end
773
+
774
+ def passthrough_device(args={})
775
+ ensure_hash(args)
776
+ VBox::WebService.send_request(:i_machine_passthrough_device, _this.merge(args))
777
+ end
778
+
779
+ def query_log_filename(args={})
780
+ ensure_hash(args)
781
+ VBox::WebService.send_request(:i_machine_query_log_filename, _this.merge(args))
782
+ end
783
+
784
+ def query_saved_guest_screen_info(args={})
785
+ ensure_hash(args)
786
+ VBox::WebService.send_request(:i_machine_query_saved_guest_screen_info, _this.merge(args))
787
+ end
788
+
789
+ def query_saved_screenshot_png_size(args={})
790
+ ensure_hash(args)
791
+ VBox::WebService.send_request(:i_machine_query_saved_screenshot_png_size, _this.merge(args))
792
+ end
793
+
794
+ def query_saved_thumbnail_size(args={})
795
+ ensure_hash(args)
796
+ VBox::WebService.send_request(:i_machine_query_saved_thumbnail_size, _this.merge(args))
797
+ end
798
+
799
+ def read_log(args={})
800
+ ensure_hash(args)
801
+ VBox::WebService.send_request(:i_machine_read_log, _this.merge(args))
802
+ end
803
+
804
+ def read_saved_screenshot_png_to_array(args={})
805
+ ensure_hash(args)
806
+ VBox::WebService.send_request(:i_machine_read_saved_screenshot_png_to_array, _this.merge(args))
807
+ end
808
+
809
+ def read_saved_thumbnail_png_to_array(args={})
810
+ ensure_hash(args)
811
+ VBox::WebService.send_request(:i_machine_read_saved_thumbnail_png_to_array, _this.merge(args))
812
+ end
813
+
814
+ def read_saved_thumbnail_to_array(args={})
815
+ ensure_hash(args)
816
+ VBox::WebService.send_request(:i_machine_read_saved_thumbnail_to_array, _this.merge(args))
817
+ end
818
+
819
+ def remove_all_cpuid_leaves
820
+ VBox::WebService.send_request(:i_machine_remove_all_cpuid_leaves, _this)
821
+ end
822
+
823
+ def remove_cpuid_leaf(args={})
824
+ ensure_hash(args)
825
+ VBox::WebService.send_request(:i_machine_remove_cpuid_leaf, _this.merge(args))
826
+ end
827
+
828
+ def remove_shared_folder(args={})
829
+ ensure_hash(args)
830
+ VBox::WebService.send_request(:i_machine_remove_shared_folder, _this.merge(args))
831
+ end
832
+
833
+ def remove_storage_controller(args={})
834
+ ensure_hash(args)
835
+ VBox::WebService.send_request(:i_machine_remove_storage_controller, _this.merge(args))
836
+ end
837
+
838
+ def save_settings
839
+ VBox::WebService.send_request(:i_machine_save_settings, _this)
840
+ end
841
+
842
+ def set_auto_discard_for_device(args={})
843
+ ensure_hash(args)
844
+ VBox::WebService.send_request(:i_machine_set_auto_discard_for_device, _this.merge(args))
845
+ end
846
+
847
+ def set_bandwidth_group_for_device(args={})
848
+ ensure_hash(args)
849
+ if args.has_key?(:bandwidth_group) & args[:bandwidth_group].respond_to?(:ref)
850
+ args[:bandwidth_group] = args[:bandwidth_group].ref
851
+ end
852
+ VBox::WebService.send_request(:i_machine_set_bandwidth_group_for_device, _this.merge(args))
853
+ end
854
+
855
+ def set_boot_order(args={})
856
+ ensure_hash(args)
857
+ VBox::WebService.send_request(:i_machine_set_boot_order, _this.merge(args))
858
+ end
859
+
860
+ def set_cpuid_leaf(args={})
861
+ ensure_hash(args)
862
+ VBox::WebService.send_request(:i_machine_set_cpuid_leaf, _this.merge(args))
863
+ end
864
+
865
+ def set_cpu_property(args={})
866
+ ensure_hash(args)
867
+ VBox::WebService.send_request(:i_machine_set_cpu_property, _this.merge(args))
868
+ end
869
+
870
+ def set_extra_data(args={})
871
+ ensure_hash(args)
872
+ VBox::WebService.send_request(:i_machine_set_extra_data, _this.merge(args))
873
+ end
874
+
875
+ def set_guest_property(args={})
876
+ ensure_hash(args)
877
+ VBox::WebService.send_request(:i_machine_set_guest_property, _this.merge(args))
878
+ end
879
+
880
+ def set_guest_property_value(args={})
881
+ ensure_hash(args)
882
+ VBox::WebService.send_request(:i_machine_set_guest_property_value, _this.merge(args))
883
+ end
884
+
885
+ def set_hw_virt_ex_property(args={})
886
+ ensure_hash(args)
887
+ VBox::WebService.send_request(:i_machine_set_hw_virt_ex_property, _this.merge(args))
888
+ end
889
+
890
+ def set_no_bandwidth_group_for_device(args={})
891
+ ensure_hash(args)
892
+ VBox::WebService.send_request(:i_machine_set_no_bandwidth_group_for_device, _this.merge(args))
893
+ end
894
+
895
+ def set_storage_controller_bootable(args={})
896
+ ensure_hash(args)
897
+ VBox::WebService.send_request(:i_machine_set_storage_controller_bootable, _this.merge(args))
898
+ end
899
+
900
+ def show_console_window
901
+ VBox::WebService.send_request(:i_machine_show_console_window, _this.merge)
902
+ end
903
+
904
+ def temporary_eject_device(args={})
905
+ ensure_hash(args)
906
+ VBox::WebService.send_request(:i_machine_temporary_eject_device, _this.merge(args))
907
+ end
908
+
909
+ def umnount_medium(args={})
910
+ ensure_hash(args)
911
+ VBox::WebService.send_request(:i_machine_umount_medium, _this.merge(args))
912
+ end
913
+
914
+ def unregister(args={})
915
+ ensure_hash(args)
916
+ media = VBox::WebService.send_request(:i_machine_unregister, _this.merge(args))
917
+ media.to_a.map do |medium|
918
+ VBox::Medium.new(medium)
919
+ end
920
+ end
921
+ end
922
+ end