class Nexpose::Delivery

Data object for configuration of where a report is stored or delivered.

Attributes

email[RW]

E-mail configuration.

location[RW]

Directory location to store report in (for non-default storage).

store_on_server[RW]

Whether to store report on server.

Public Class Methods

new(store_on_server, location = nil, email = nil) click to toggle source
# File lib/nexpose/report.rb, line 514
def initialize(store_on_server, location = nil, email = nil)
  @store_on_server = store_on_server
  @location = location
  @email = email
end
parse(xml) click to toggle source
# File lib/nexpose/report.rb, line 529
def self.parse(xml)
  xml.elements.each('//Delivery') do
    on_server = false
    location = nil
    xml.elements.each('//Storage') do |storage|
      on_server = true if storage.attributes['storeOnServer'] == '1'
      xml.elements.each('//location') do |loc|
        location = loc.text
      end
    end

    email = Email.parse(xml)

    return Delivery.new(on_server, location, email)
  end
  nil
end

Public Instance Methods

to_xml() click to toggle source
# File lib/nexpose/report.rb, line 520
def to_xml
  xml = '<Delivery>'
  xml << %(<Storage storeOnServer="#{@store_on_server ? 1 : 0}">)
  xml << %(<location>#{@location}</location>) if @location
  xml << '</Storage>'
  xml << @email.to_xml if @email
  xml << '</Delivery>'
end