Class: Nexpose::Frequency

Inherits:
Object
  • Object
show all
Defined in:
lib/nexpose/report.rb

Overview

Data object associated with when a report is generated.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(after_scan, scheduled, schedule = nil) ⇒ Frequency

Returns a new instance of Frequency.



452
453
454
455
456
# File 'lib/nexpose/report.rb', line 452

def initialize(after_scan, scheduled, schedule = nil)
  @after_scan = after_scan
  @scheduled = scheduled
  @schedule = schedule
end

Instance Attribute Details

#after_scanObject

Will the report be generated after a scan completes (true), or is it ad hoc/scheduled (false).



446
447
448
# File 'lib/nexpose/report.rb', line 446

def after_scan
  @after_scan
end

#scheduleObject

Schedule associated with the report.



450
451
452
# File 'lib/nexpose/report.rb', line 450

def schedule
  @schedule
end

#scheduledObject

Whether or not a scan is scheduled.



448
449
450
# File 'lib/nexpose/report.rb', line 448

def scheduled
  @scheduled
end

Class Method Details

.parse(xml) ⇒ Object



464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
# File 'lib/nexpose/report.rb', line 464

def self.parse(xml)
  xml.elements.each('//Generate') do |generate|
    if generate.attributes['after-scan'] == '1'
      return Frequency.new(true, false)
    else
      if generate.attributes['schedule'] == '1'
        generate.elements.each('Schedule') do |sched|
          schedule = Schedule.parse(sched)
          return Frequency.new(false, true, schedule)
        end
      end
      return Frequency.new(false, false)
    end
  end
  nil
end

Instance Method Details

#to_xmlObject



458
459
460
461
462
# File 'lib/nexpose/report.rb', line 458

def to_xml
  xml = %(<Generate after-scan='#{@after_scan ? 1 : 0}' schedule='#{@scheduled ? 1 : 0}'>)
  xml << @schedule.to_xml if @schedule
  xml << '</Generate>'
end