Module: CleanUp

Defined in:
lib/clean_up.rb,
lib/clean_up/rules.rb,
lib/clean_up/folder.rb,
lib/clean_up/version.rb,
lib/clean_up/conditions.rb,
lib/clean_up/rules/base.rb,
lib/clean_up/folders_rules.rb,
lib/clean_up/option_values.rb,
lib/clean_up/conditions/name.rb,
lib/clean_up/conditions/size.rb,
lib/clean_up/rules/copy_file.rb,
lib/clean_up/rules/move_file.rb,
lib/clean_up/conditions/pattern.rb,
lib/clean_up/conditions/contains.rb,
lib/clean_up/conditions/extension.rb,
lib/clean_up/rules/copy_directory.rb,
lib/clean_up/rules/move_directory.rb

Defined Under Namespace

Modules: Conditions, Rules Classes: Folder, FoldersRules, OptionValues

Constant Summary collapse

IGNORED_ENTRIES =
%w(. .. .DS_Store .localized).freeze
VERSION =
'0.1.2'.freeze

Class Method Summary collapse

Class Method Details

.checkObject



21
22
23
24
25
26
27
28
29
30
31
# File 'lib/clean_up.rb', line 21

def check
  folders_rules.each do |folder_rules|
    dir_entries(folder_rules.source).each do |entry|
      if File.directory?(entry)
        folder_rules.process_directory(entry)
      else
        folder_rules.process_file(entry)
      end
    end
  end
end

.define(&block) ⇒ Object



13
14
15
# File 'lib/clean_up.rb', line 13

def define(&block)
  @folders_rules = FoldersRules.collect(&block)
end

.dir_entries(folder) ⇒ Object



33
34
35
36
37
# File 'lib/clean_up.rb', line 33

def dir_entries(folder)
  (Dir.entries(folder) - IGNORED_ENTRIES).map do |entry|
    File.absolute_path(entry, folder)
  end
end

.folders_rulesObject



17
18
19
# File 'lib/clean_up.rb', line 17

def folders_rules
  @folders_rules || []
end