class DirectoryScanner

Public Class Methods

new() click to toggle source
# File lib/mvn_plugin_config/directory_scanner.rb, line 3
def initialize
  @fileAction = nil
  @dirAction = nil
end

Public Instance Methods

directories_in_parent(parentPath) click to toggle source
# File lib/mvn_plugin_config/directory_scanner.rb, line 16
def directories_in_parent(parentPath)
  directories = []
  Dir.open(parentPath) do |dir|
    for file in dir
      next if file == '.';
      next if file == '..';
      path = parentPath + File::Separator + file
      if File.directory? path
        directories << file
      end
    end
  end 
  
  directories 
end
on_dir(&action) click to toggle source
# File lib/mvn_plugin_config/directory_scanner.rb, line 12
def on_dir(&action)
  @dirAction = action
end
on_file(&action) click to toggle source
# File lib/mvn_plugin_config/directory_scanner.rb, line 8
def on_file(&action)
  @fileAction = action
end
scan_subtree(parentPath) click to toggle source
# File lib/mvn_plugin_config/directory_scanner.rb, line 32
def scan_subtree(parentPath)
  Dir.open(parentPath) do |dir|
    for file in dir
      next if file == '.';
      next if file == '..';
      path = parentPath + File::Separator + file
      if File.directory? path
        @dirAction.call(file, path) unless @dirAction.nil?
        scan_subtree(path)
      else
        @fileAction.call(file, path) unless @fileAction.nil?
      end
    end
  end
end