lib/fde/file_crawler.rb in fde-file_crawler-0.4.0 vs lib/fde/file_crawler.rb in fde-file_crawler-0.5.0

- old
+ new

@@ -1,40 +1,38 @@ require 'fde/file_crawler/version' module FDE + module FileCrawler class NoCopyTargetDefined < StandardError; end class Config attr_accessor :path_in_directory, :path_out_directory end + def self.config @@config ||= Config.new end def self.configure yield self.config end + # TODO: remove conditional def self.watch(query = nil, &block) unless query.nil? - self.crawl(query).each do |file| - yield file - end + yield self.crawl(query) else - self.crawl.each do |file| - yield file - end + yield self.crawl end end def self.crawl(query = /.*\.*/i) path = self.config.path_in_directory files = Dir.entries(path) files -= %w[. ..] - files.select! { |file| query.match(file) } - files + files.select { |file| query.match(file) } end def self.copy(file, target = nil) if self.config.path_out_directory && target.nil? FileUtils.copy(path_for(file), self.config.path_out_directory)