Sha256: 3b5919a20f7e8d99b3afd82944ace02ac4cabdc33e0c7c9934a0b373b565894c

Contents?: true

Size: 582 Bytes

Versions: 2

Compression:

Stored size: 582 Bytes

Contents

require 'fileutils'

module Pmux
  class Cleaner
    def initialize *glob_pats
      @glob_pats = glob_pats
    end

    def run lim_time=nil
      fork {fork {@glob_pats.each {|glob_pat| clean glob_pat, lim_time}}}
      Process.wait
    end

    def clean glob_pat=nil, lim_time=nil
      glob_pat ||= ''
      lim_time ||= Time.now - 3600*24*7
      paths = Dir.glob glob_pat
      for path in paths
        if File.exist? path
          mtime = File.mtime path
          if mtime < lim_time
            FileUtils.rm_rf path
          end
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
pmux-0.1.3 lib/pmux/cleaner.rb
pmux-0.1.2 lib/pmux/cleaner.rb