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.



464
465
466
467
468
# File 'lib/nexpose/report.rb', line 464

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).



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

def after_scan
  @after_scan
end

#scheduleObject

Schedule associated with the report.



462
463
464
# File 'lib/nexpose/report.rb', line 462

def schedule
  @schedule
end

#scheduledObject

Whether or not a scan is scheduled.



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

def scheduled
  @scheduled
end

Class Method Details

.parse(xml) ⇒ Object



476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
# File 'lib/nexpose/report.rb', line 476

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



470
471
472
473
474
# File 'lib/nexpose/report.rb', line 470

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