Class: Nexpose::ReportSummary

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

Overview

Summary of a single report.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(id, config_id, status, generated_on, uri) ⇒ ReportSummary

Returns a new instance of ReportSummary.



146
147
148
149
150
151
152
# File 'lib/nexpose/report.rb', line 146

def initialize(id, config_id, status, generated_on, uri)
  @id = id
  @config_id = config_id
  @status = status
  @generated_on = generated_on
  @uri = uri
end

Instance Attribute Details

#config_idObject (readonly)

The report definition (configuration) ID.



137
138
139
# File 'lib/nexpose/report.rb', line 137

def config_id
  @config_id
end

#generated_onObject (readonly)

The date and time the report was generated, in ISO 8601 format.



142
143
144
# File 'lib/nexpose/report.rb', line 142

def generated_on
  @generated_on
end

#idObject (readonly)

The id of the generated report.



135
136
137
# File 'lib/nexpose/report.rb', line 135

def id
  @id
end

#statusObject (readonly)

The current status of the report. One of: Started|Generated|Failed|Aborted|Unknown



140
141
142
# File 'lib/nexpose/report.rb', line 140

def status
  @status
end

#uriObject (readonly)

The relative URI to use to access the report.



144
145
146
# File 'lib/nexpose/report.rb', line 144

def uri
  @uri
end

Class Method Details

.parse(xml) ⇒ Object



159
160
161
# File 'lib/nexpose/report.rb', line 159

def self.parse(xml)
  ReportSummary.new(xml.attributes['id'], xml.attributes['cfg-id'], xml.attributes['status'], xml.attributes['generated-on'], xml.attributes['report-URI'])
end

.parse_all(response) ⇒ Object



163
164
165
166
167
168
169
170
171
# File 'lib/nexpose/report.rb', line 163

def self.parse_all(response)
  summaries = []
  if (response.success)
    response.res.elements.each('//ReportSummary') do |summary|
      summaries << ReportSummary.parse(summary)
    end
  end
  summaries
end

Instance Method Details

#delete(connection) ⇒ Object

Delete this report.



155
156
157
# File 'lib/nexpose/report.rb', line 155

def delete(connection)
  connection.delete_report(@id)
end