class SmartIoC::BeanLocator
Constants
- BEAN_PATTERN
Public Instance Methods
locate_beans(package_name, dir)
click to toggle source
@param package_name [Symbol] package name for bean (ex: :repository) @param dir [String] absolute path for directory with bean definitions @return nil
# File lib/smart_ioc/bean_locator.rb, line 9 def locate_beans(package_name, dir) check_arg(package_name, :package_name, Symbol) Dir.glob(File.join(dir, '**/*.rb')).each do |file_path| File.readlines(file_path).each do |line| match_data = line.match(BEAN_PATTERN) if match_data SmartIoC::BeanLocations.add_bean( package_name, match_data.captures.first.gsub(':', '').to_sym, file_path ) break end end end nil end