class Bubbles::DirWatcher
Constants
- DestinationIsNotDirectory
Attributes
command_queue[R]
config[R]
Public Class Methods
new(config:, command_queue:)
click to toggle source
# File lib/bubbles/dir_watcher.rb, line 6 def initialize(config:, command_queue:) @config = config @command_queue = command_queue end
Public Instance Methods
call()
click to toggle source
# File lib/bubbles/dir_watcher.rb, line 11 def call check_source_dir_existence check_processing_dir_existence source_dir_files .last(num_of_files_to_schedule) .each do |file| bfile = BubbliciousFile.new(file: file, config: config) bfile.copy_to_processing_dir uploader_classes.each do |uploader_class| command_queue << uploader_class.new(bfile: bfile, command_queue: command_queue, config: config) end command_queue << bfile.public_method(:remove_file) end command_queue << self end
inspect()
click to toggle source
# File lib/bubbles/dir_watcher.rb, line 31 def inspect "#<#{self.class.name} source_dir: #{source_dir}, processing_dir: #{processing_dir}>" end
source_dir_files()
click to toggle source
# File lib/bubbles/dir_watcher.rb, line 35 def source_dir_files Dir .glob(source_dir.join('**/*').to_s) .select { |x| Pathname.new(x).file? } end
Private Instance Methods
check_processing_dir_existence()
click to toggle source
# File lib/bubbles/dir_watcher.rb, line 49 def check_processing_dir_existence raise DestinationIsNotDirectory unless processing_dir.directory? end
check_source_dir_existence()
click to toggle source
# File lib/bubbles/dir_watcher.rb, line 45 def check_source_dir_existence raise DestinationIsNotDirectory unless source_dir.directory? end