Class: MiqVimEventHistoryCollector
- Inherits:
-
Object
- Object
- MiqVimEventHistoryCollector
- Includes:
- VMwareWebService::Logging
- Defined in:
- lib/VMwareWebService/MiqVimEventHistoryCollector.rb
Instance Attribute Summary collapse
-
#invObj ⇒ Object
readonly
Returns the value of attribute invObj.
Instance Method Summary collapse
-
#events(direction = :forward, maxCount = @pgSize) ⇒ Object
Helper method that yields all requested events.
-
#initialize(invObj, eventFilterSpec = nil, pgSize = 20) ⇒ MiqVimEventHistoryCollector
constructor
A new instance of MiqVimEventHistoryCollector.
- #pageSize ⇒ Object
- #pageSize=(val) ⇒ Object
- #readNext(maxCount = @pgSize) ⇒ Object
- #readPrevious(maxCount = @pgSize) ⇒ Object
- #release ⇒ Object
- #reset ⇒ Object
- #rewind ⇒ Object
Methods included from VMwareWebService::Logging
Constructor Details
#initialize(invObj, eventFilterSpec = nil, pgSize = 20) ⇒ MiqVimEventHistoryCollector
Returns a new instance of MiqVimEventHistoryCollector.
8 9 10 11 12 13 14 15 16 17 |
# File 'lib/VMwareWebService/MiqVimEventHistoryCollector.rb', line 8 def initialize(invObj, eventFilterSpec = nil, pgSize = 20) @invObj = invObj @sic = invObj.sic @pgSize = pgSize @eventFilterSpec = eventFilterSpec || VimHash.new("EventFilterSpec") @eventHistoryCollector = @invObj.createCollectorForEvents(@sic.eventManager, @eventFilterSpec) @invObj.setCollectorPageSize(@eventHistoryCollector, @pgSize) end |
Instance Attribute Details
#invObj ⇒ Object (readonly)
Returns the value of attribute invObj.
6 7 8 |
# File 'lib/VMwareWebService/MiqVimEventHistoryCollector.rb', line 6 def invObj @invObj end |
Instance Method Details
#events(direction = :forward, maxCount = @pgSize) ⇒ Object
Helper method that yields all requested events
57 58 59 60 61 62 63 64 65 66 |
# File 'lib/VMwareWebService/MiqVimEventHistoryCollector.rb', line 57 def events(direction = :forward, maxCount = @pgSize) set_method, next_method = (direction == :forward) ? [:rewind, :readNext] : [:reset, :readPrevious] send(set_method) readNext if direction == :reverse # Hack to fix issue with VC setting to first page of events while (events_page = send(next_method, maxCount)) events_page.each { |event| yield(event) } end end |
#pageSize ⇒ Object
46 47 48 |
# File 'lib/VMwareWebService/MiqVimEventHistoryCollector.rb', line 46 def pageSize @pgSize end |
#pageSize=(val) ⇒ Object
50 51 52 53 54 |
# File 'lib/VMwareWebService/MiqVimEventHistoryCollector.rb', line 50 def pageSize=(val) raise "MiqVimEventHistoryCollector.pageSize=: collector instance has been released" unless @eventHistoryCollector @invObj.setCollectorPageSize(@eventHistoryCollector, val) @pgSize = val end |
#readNext(maxCount = @pgSize) ⇒ Object
26 27 28 29 |
# File 'lib/VMwareWebService/MiqVimEventHistoryCollector.rb', line 26 def readNext(maxCount = @pgSize) raise "MiqVimEventHistoryCollector.readNext: collector instance has been released" unless @eventHistoryCollector @invObj.readNextEvents(@eventHistoryCollector, maxCount) end |
#readPrevious(maxCount = @pgSize) ⇒ Object
31 32 33 34 |
# File 'lib/VMwareWebService/MiqVimEventHistoryCollector.rb', line 31 def readPrevious(maxCount = @pgSize) raise "MiqVimEventHistoryCollector.readPrevious: collector instance has been released" unless @eventHistoryCollector @invObj.readPreviousEvents(@eventHistoryCollector, maxCount) end |
#release ⇒ Object
19 20 21 22 23 24 |
# File 'lib/VMwareWebService/MiqVimEventHistoryCollector.rb', line 19 def release return unless @eventHistoryCollector logger.info "MiqVimEventHistoryCollector.release: destroying #{@eventHistoryCollector}" @invObj.destroyCollector(@eventHistoryCollector) @eventHistoryCollector = nil end |
#reset ⇒ Object
36 37 38 39 |
# File 'lib/VMwareWebService/MiqVimEventHistoryCollector.rb', line 36 def reset raise "MiqVimEventHistoryCollector.reset: collector instance has been released" unless @eventHistoryCollector @invObj.resetCollector(@eventHistoryCollector) end |
#rewind ⇒ Object
41 42 43 44 |
# File 'lib/VMwareWebService/MiqVimEventHistoryCollector.rb', line 41 def rewind raise "MiqVimEventHistoryCollector.rewind: collector instance has been released" unless @eventHistoryCollector @invObj.rewindCollector(@eventHistoryCollector) end |