Class: VBox::EventSource
- Inherits:
-
Base
- Object
- Base
- VBox::EventSource
show all
- Defined in:
- lib/virtualbox/classes/event_source.rb
Instance Attribute Summary collapse
Instance Method Summary
collapse
Methods inherited from Base
#_this, #delete!, #ensure_hash, #initialize, #vbox_class
Constructor Details
This class inherits a constructor from VBox::Base
Instance Attribute Details
#ref ⇒ Object
Returns the value of attribute ref.
4
5
6
|
# File 'lib/virtualbox/classes/event_source.rb', line 4
def ref
@ref
end
|
Instance Method Details
#create_aggregator(args = {}) ⇒ Object
8
9
10
11
12
13
14
15
16
17
|
# File 'lib/virtualbox/classes/event_source.rb', line 8
def create_aggregator(args={})
ensure_hash(args)
if args.has_key?(:subordinates)
args[:subordinates].map! do |subordinate|
subordinate.respond_to?(:ref) ? subordinate.ref : subordinate
end
end
event_source = VBox::WebService.send_request(:i_event_source_create_aggregator, _this.merge(args))
VBox::EventSource.new(event_source)
end
|
#create_listener ⇒ Object
#event_processed(args = {}) ⇒ Object
24
25
26
27
28
29
|
# File 'lib/virtualbox/classes/event_source.rb', line 24
def event_processed(args={})
ensure_hash(args)
args[:listener] = args[:listener].ref if args.has_key?(:listener) & args[:listener].respond_to?(:ref)
args[:event] = args[:event].ref if args.has_key?(:event) & args[:event].respond_to?(:ref)
VBox::WebService.send_request(:i_event_source_event_processed, _this.merge(args))
end
|
#fire_event(args = {}) ⇒ Object
31
32
33
34
35
|
# File 'lib/virtualbox/classes/event_source.rb', line 31
def fire_event(args={})
ensure_hash(args)
args[:event] = args[:event].ref if args.has_key?(:event) & args[:event].respond_to?(:ref)
VBox::WebService.send_request(:i_event_source_fire_event, _this.merge(args))
end
|
#get_event(args = {}) ⇒ Object
37
38
39
40
41
42
43
44
45
46
47
48
|
# File 'lib/virtualbox/classes/event_source.rb', line 37
def get_event(args={})
ensure_hash(args)
args[:listener] = args[:listener].ref if args.has_key?(:listener) & args[:listener].respond_to?(:ref)
event_obj_ref = VBox::WebService.send_request(:i_event_source_get_event, _this.merge(args))
if event_obj_ref.nil?
nil
else
event = VBox::Event.new(event_obj_ref)
event_subclass = event.type.split('On')[1] + 'Event'
VBox.const_get(event_subclass).new(event_obj_ref)
end
end
|
#register_listener(args = {}) ⇒ Object
50
51
52
53
54
|
# File 'lib/virtualbox/classes/event_source.rb', line 50
def register_listener(args={})
ensure_hash(args)
args[:listener] = args[:listener].ref if args.has_key?(:listener) & args[:listener].respond_to?(:ref)
VBox::WebService.send_request(:i_event_source_register_listener, _this.merge(args))
end
|
#unregister_listener(args = {}) ⇒ Object
56
57
58
59
60
|
# File 'lib/virtualbox/classes/event_source.rb', line 56
def unregister_listener(args={})
ensure_hash(args)
args[:listener] = args[:listener].ref if args.has_key?(:listener) & args[:listener].respond_to?(:ref)
VBox::WebService.send_request(:i_event_source_unregister_listener, _this.merge(args))
end
|