Sha256: b38062c8ed58b944804ce87bd47079dcd3b8272d619d2923aca7df5d02c763ba

Contents?: true

Size: 471 Bytes

Versions: 4

Compression:

Stored size: 471 Bytes

Contents

module Eternity
  module Log

    private

    def log(method)
      original_method = "__#{method}_without_log__"

      alias_method original_method, method

      define_method method do |*args, &block|
        Eternity.logger.info(self.class.name) { "#{method} (Start)" }
        result = send original_method, *args, &block
        Eternity.logger.info(self.class.name) { "#{method} (End)" }
        result
      end

      private original_method
    end

  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
eternity-0.0.4 lib/eternity/log.rb
eternity-0.0.3 lib/eternity/log.rb
eternity-0.0.2 lib/eternity/log.rb
eternity-0.0.1 lib/eternity/log.rb