Class: Pluginscan::WPVulnDB::DataMapper

Inherits:
Object
  • Object
show all
Defined in:
lib/pluginscan/reports/vulnerability_report/wp_vuln_db_api.rb

Instance Method Summary collapse

Instance Method Details

#call(response_data, plugin_slug) ⇒ Object



44
45
46
47
48
49
50
51
52
53
54
# File 'lib/pluginscan/reports/vulnerability_report/wp_vuln_db_api.rb', line 44

def call(response_data, plugin_slug)
  plugin_data = response_data.fetch(plugin_slug) do
    raise(UnexpectedJSONError, "Couldn't find data for '#{plugin_slug}' in api response")
  end

  vulns = plugin_data.fetch('vulnerabilities') do
    raise(UnexpectedJSONError, "Couldn't find a list of vulnerabilities")
  end

  vulns.map{ |v| Advisory.new(v) }
end