class NipperParser::Config

Config opens nipper studio XML generated report and initially parses the XML file

@example Basic usage

nipper_parser = NipperParser::Config.open('nipper-network-devices.xml')
pp nipper_parser.information.title
pp nipper_parser.information.author
pp nipper_parser.information.date
pp nipper_parser.security_audit
pp nipper_parser.security_audit.findings
pp nipper_parser.security_audit.findings[0]
pp nipper_parser.security_audit.findings[0].title
pp nipper_parser.security_audit.findings[0].impact
pp nipper_parser.security_audit.conclusions
pp nipper_parser.security_audit.conclusions.per_device
pp nipper_parser.security_audit.recommendations.list
pp nipper_parser.security_audit.mitigation_classification

@param file [File] @attr_reader information [Information] object of Information parser @attr_reader security_audit [SecurityAudit] object of SecurityAudit parser

Attributes

filtering_complexity[R]

@!attribute filtering_complexity for report filtering complexity section, it calls [FilteringComplexity] class

information[R]

@!attribute information for report general information section, it calls [Information] class

security_audit[R]

@!attribute security_audit for security audit section, it calls [SecurityAudit] class

vulnerability_audit[R]

@!attribute vulnerability_audit for report vulnerability audit section, it calls [VulnerabilityAudit] class

Public Class Methods

new(file) click to toggle source
# File lib/nipper_parser.rb, line 50
def initialize(file)
  config_parsed = Nokogiri::XML(File.open(file))

  # instantiate all parsers
  @information           = Information.new(config_parsed)
  @security_audit        = SecurityAudit.new(config_parsed)
  @vulnerability_audit   = VulnerabilityAudit.new(config_parsed)
  @filtering_complexity  = FilteringComplexity.new(config_parsed)
end