Class: CVE::Core

Inherits:
Object
  • Object
show all
Defined in:
lib/cve_crawler/cve_core.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(crawl_type = 'default', verify_cert = true, user_agent = nil, filters = nil) ⇒ Core

Returns a new instance of Core.



12
13
14
15
16
17
18
19
# File 'lib/cve_crawler/cve_core.rb', line 12

def initialize(crawl_type='default', verify_cert=true, user_agent=nil, filters=nil)
  unless user_agent
    user_agent = create_user_agent
  end

  @crawler = Crawler.new(crawl_type, verify_cert, user_agent)
  @parser = Parser.new(filters)
end

Instance Attribute Details

#crawlerObject (readonly)

Returns the value of attribute crawler.



21
22
23
# File 'lib/cve_crawler/cve_core.rb', line 21

def crawler
  @crawler
end

#parserObject (readonly)

Returns the value of attribute parser.



21
22
23
# File 'lib/cve_crawler/cve_core.rb', line 21

def parser
  @parser
end

Instance Method Details

#crawlObject



28
29
30
# File 'lib/cve_crawler/cve_core.rb', line 28

def crawl
  @crawler.crawl
end

#create_user_agentObject



36
37
38
# File 'lib/cve_crawler/cve_core.rb', line 36

def create_user_agent
  'RubyCVECrawler/' + VERSION + ' (https://github.com/zarthus/ruby-cve-crawler)'
end

#fetchObject



23
24
25
26
# File 'lib/cve_crawler/cve_core.rb', line 23

def fetch
  body = crawl.body
  parse(body)
end

#inspectObject



40
41
42
# File 'lib/cve_crawler/cve_core.rb', line 40

def inspect
  "<CVE::Core crawler=#{@crawler.inspect} parser=#{@parser.inspect}>"
end

#parse(data) ⇒ Object



32
33
34
# File 'lib/cve_crawler/cve_core.rb', line 32

def parse(data)
  @parser.parse(data)
end