Sha256: 98f54a0008bc000654ffd5bb3dca1ce14822e75545c35edddf5e703d63f52c78

Contents?: true

Size: 531 Bytes

Versions: 10

Compression:

Stored size: 531 Bytes

Contents

require 'backupsss/removal_error'

module Backupsss
  # A class for listing and sorting files by mtime
  class BackupDir
    def initialize(opts = {})
      @dir = opts[:dir]
    end

    def ls
      Dir.entries(@dir).reject { |f| (f == '..' || f == '.') }
    end

    def ls_t
      ls.sort_by { |f| File.mtime("#{@dir}/#{f}") }
    end

    def ls_rt
      ls_t.reverse
    end

    def rm(file)
      FileUtils.rm(File.join(@dir, file))
      file
    rescue SystemCallError => e
      raise RemovalError, e
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
backupsss-0.5.0 lib/backupsss/backup_dir.rb
backupsss-0.4.1 lib/backupsss/backup_dir.rb
backupsss-0.4.0 lib/backupsss/backup_dir.rb
backupsss-0.3.2 lib/backupsss/backup_dir.rb
backupsss-0.3.1 lib/backupsss/backup_dir.rb
backupsss-0.3.0 lib/backupsss/backup_dir.rb
backupsss-0.2.0 lib/backupsss/backup_dir.rb
backupsss-0.1.3 lib/backupsss/backup_dir.rb
backupsss-0.1.1 lib/backupsss/backup_dir.rb
backupsss-0.1.0 lib/backupsss/backup_dir.rb