Sha256: 745408f222f2ba5736aede8f0030adfe9215e5703ae2dc8552d7febfbc7b6ff4
Contents?: true
Size: 732 Bytes
Versions: 7
Compression:
Stored size: 732 Bytes
Contents
# frozen_string_literal: true module Mihari module Models # # CPE model # class CPE < ActiveRecord::Base belongs_to :artifact class << self include Dry::Monads[:result] # # Build CPEs # # @param [String] ip # @param [Mihari::Enrichers::Shodan] enricher # # @return [Array<Mihari::CPE>] # def build_by_ip(ip, enricher: Enrichers::Shodan.new) result = enricher.result(ip).bind do |res| if res.nil? Success [] else Success(res.cpes.map { |cpe| new(cpe: cpe) }) end end result.value_or [] end end end end end
Version data entries
7 entries across 7 versions & 1 rubygems