Sha256: 34554ba54b87a705af422df9fb0432b598258e857621beaccdc10fbf997c23c5
Contents?: true
Size: 1.86 KB
Versions: 1
Compression:
Stored size: 1.86 KB
Contents
module Mihari module Structs module BinaryEdge class Target < Dry::Struct attribute :ip, Types::String # # @return [String] # def ip attributes[:ip] end class << self def from_dynamic!(d) d = Types::Hash[d] new( ip: d.fetch("ip") ) end end end class Event < Dry::Struct attribute :target, Target # # @return [Target] # def target attributes[:target] end class << self def from_dynamic!(d) d = Types::Hash[d] new( target: Target.from_dynamic!(d.fetch("target")) ) end end end class Response < Dry::Struct # @!attribute [r] page # @return [Integer] attribute :page, Types::Integer # @!attribute [r] pagesize # @return [Integer] attribute :pagesize, Types::Integer # @!attribute [r] total # @return [Integer] attribute :total, Types::Integer # @!attribute [r] events # @return [Array<Event>] attribute :events, Types.Array(Event) # # @return [Array<Event>] # def events attributes[:events] end # # @return [Array<Artifact>] # def artifacts events.map { |event| Models::Artifact.new(data: event.target.ip) } end class << self def from_dynamic!(d) d = Types::Hash[d] new( page: d.fetch("page"), pagesize: d.fetch("pagesize"), total: d.fetch("total"), events: d.fetch("events").map { |x| Event.from_dynamic!(x) } ) end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
mihari-5.6.2 | lib/mihari/structs/binaryedge.rb |