Sha256: a123d85d7eee64d3cb37190911723b106f1176e8d9a119df66fa9f8e88c4fd08

Contents?: true

Size: 970 Bytes

Versions: 1

Compression:

Stored size: 970 Bytes

Contents

# frozen_string_literal: true

module Mihari
  module Schemas
    module Enrichers
      extend Schemas::Mixins

      IPInfo = Dry::Schema.Params do
        required(:enricher).value(Types::String.enum(*Mihari::Enrichers::IPInfo.class_keys))
        optional(:api_key).value(:string)
        optional(:options).hash(Options)
      end

      Whois = Dry::Schema.Params do
        required(:enricher).value(Types::String.enum(*Mihari::Enrichers::Whois.class_keys))
        optional(:options).hash(Options)
      end

      Shodan = Dry::Schema.Params do
        required(:enricher).value(Types::String.enum(*Mihari::Enrichers::Shodan.class_keys))
        optional(:options).hash(Options)
      end

      GooglePublicDNS = Dry::Schema.Params do
        required(:enricher).value(Types::String.enum(*Mihari::Enrichers::GooglePublicDNS.class_keys))
        optional(:options).hash(Options)
      end
    end

    Enricher = Schemas::Enrichers.get_or_composition
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mihari-5.6.2 lib/mihari/schemas/enricher.rb