Sha256: b97b06086fbdede55b3027ecaebcfb42f3a3e99fce7676c1e4206075ea5ccdeb

Contents?: true

Size: 611 Bytes

Versions: 2

Compression:

Stored size: 611 Bytes

Contents

module ServerGemListen
  module Listener
    class << self
      def start
        listener = Listen.to(ENV['GEM_HOME']) do |*args|
          notify(*args)
          Puma.restart
        end

        listener.start
        sleep
      end

      private

      def notify(modified, added, removed)
        files = { modified: modified, added: added, removed: removed }
        files.each_pair do |key, value|
          next if value.empty?
          value.map! { |v| v.gsub(ENV['GEM_HOME'], '') }
          ap "#{'File'.pluralize(value.size)} #{key}:"
          ap value
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
server-gem-listen-0.1.1 lib/server_gem_listen/listener.rb
server-gem-listen-0.1.0 lib/server_gem_listen/listener.rb