module Swee::Lodder
Constants
- CACHE_FILE_MTIME_DIR
- EXTENSION_NAMES
Public Instance Methods
all()
click to toggle source
# File lib/swee/lodder.rb, line 87 def all conditional_require base_require end
app_require()
click to toggle source
用户配置
# File lib/swee/lodder.rb, line 70 def app_require # require_relative './application' begin require File.expand_path('config', ENV["app_path"]) rescue LoadError raise "未找到config.rb" end end
base_require()
click to toggle source
# File lib/swee/lodder.rb, line 34 def base_require require_relative './support' require_relative './config' # require_relative './application' # patches require_relative './patches/logger.rb' # app require_relative './routes' require_relative './helper' require_relative './controller_filter' require_relative './controller' require_relative './view' require_relative './app_executor' # middlewaves require_relative './middlewaves/content_length' require_relative './middlewaves/common_logger' require_relative './middlewaves/reloader' # thin require_relative './thin/headers' require_relative './thin/request' require_relative './thin/response' # server require_relative './swee_logger' require_relative './daemonize' require_relative './connection' require_relative './server' require_relative './exception' end
cache_file_mtime()
click to toggle source
# File lib/swee/lodder.rb, line 10 def cache_file_mtime CACHE_FILE_MTIME_DIR.each { |d| Lodder.search_app_file(d) } end
conditional_require()
click to toggle source
条件读取
# File lib/swee/lodder.rb, line 80 def conditional_require # 存在 AR 读取 unless Gem.find_files("active_record").empty? require 'active_record' end end
mtime_files()
click to toggle source
# File lib/swee/lodder.rb, line 14 def mtime_files @@mtime_files_cache end
search_app_file(dir)
click to toggle source
递归寻找目录下所有文件 保存为如下结构(用于 代码修改 reload) filename => mtime
# File lib/swee/lodder.rb, line 21 def search_app_file dir app_path = ENV["app_path"] Dir.glob("#{app_path}/#{dir}/*") do |file| if EXTENSION_NAMES.include? File.extname(file).downcase @@mtime_files_cache[file] = File.mtime(file) else if File.directory?(file) search_app_file(dir + "/" + file.split("/").last) end end end end