Sha256: 50011e234152dc5fd95bcb7f47ce15586f676f05c2ee7ce78315ef812109b901
Contents?: true
Size: 649 Bytes
Versions: 29
Compression:
Stored size: 649 Bytes
Contents
# frozen_string_literal: true module Mihari module Emitters class Base include Mixins::Configurable include Mixins::Retriable def initialize(*) end class << self def inherited(child) super Mihari.emitters << child end end # @return [Boolean] def valid? raise NotImplementedError, "You must implement #{self.class}##{__method__}" end def run(**params) retry_on_error { emit(**params) } end def emit(*) raise NotImplementedError, "You must implement #{self.class}##{__method__}" end end end end
Version data entries
29 entries across 29 versions & 1 rubygems