Class: Anvil::Vulnerability
- Inherits:
-
Object
- Object
- Anvil::Vulnerability
- Defined in:
- lib/anvil/vulnerability.rb
Instance Attribute Summary collapse
-
#args ⇒ Object
readonly
Returns the value of attribute args.
-
#client ⇒ Object
readonly
Returns the value of attribute client.
Instance Method Summary collapse
- #create!(*params) ⇒ Object
-
#initialize(client) ⇒ Vulnerability
constructor
A new instance of Vulnerability.
Constructor Details
#initialize(client) ⇒ Vulnerability
Returns a new instance of Vulnerability.
5 6 7 8 9 |
# File 'lib/anvil/vulnerability.rb', line 5 def initialize(client) raise ArgumentError, 'client param must be a Client class' if client.class != Anvil::Client @client = client end |
Instance Attribute Details
#args ⇒ Object (readonly)
Returns the value of attribute args.
3 4 5 |
# File 'lib/anvil/vulnerability.rb', line 3 def args @args end |
#client ⇒ Object (readonly)
Returns the value of attribute client.
3 4 5 |
# File 'lib/anvil/vulnerability.rb', line 3 def client @client end |
Instance Method Details
#create!(*params) ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/anvil/vulnerability.rb', line 11 def create!(*params) params.first[:evidences].each do |archive_path| params.first[:vulnerability_archives_attributes] = [{ archive: Faraday::UploadIO.new(archive_path, 'image/png') }] end params.first.delete(:evidences) conn = Faraday.new(url: @client.base_url) do |f| f.request :multipart f.request :url_encoded f.adapter :net_http end conn.post '/api/v2/vulnerabilities', vulnerability: params.first, api_key: @client.api_key end |