class Dependy::Operations::FolderExtractor

Attributes

extractor[R]
graph[R]

Public Class Methods

new(graph) click to toggle source
# File lib/dependy/operations/folder_extractor.rb, line 5
def initialize(graph)
  @graph = graph
  @extractor = Extractor.new(graph)
end

Public Instance Methods

extract(folders = [], ignore_nodes = []) click to toggle source
# File lib/dependy/operations/folder_extractor.rb, line 10
def extract(folders = [], ignore_nodes = [])
  extractor.extract(all_nodes_in_folders(folders), ignore_nodes)
end

Private Instance Methods

all_nodes_in_folders(folders = []) click to toggle source
# File lib/dependy/operations/folder_extractor.rb, line 17
def all_nodes_in_folders(folders = [])
  folders.map { |folder| scan_folder(folder) }.flatten.uniq
end
lookup_pattern(folder) click to toggle source
# File lib/dependy/operations/folder_extractor.rb, line 25
def lookup_pattern(folder)
  "#{folder}/**/*{h,m}"
end
scan_folder(folder) click to toggle source
# File lib/dependy/operations/folder_extractor.rb, line 21
def scan_folder(folder)
  Dir.glob(lookup_pattern(folder)).map { |file| File.basename(file, '.*') }
end