Remove usage of autoload statement in favor of require
This commit is contained in:
parent
5d8fd93981
commit
d55fef62b4
27 changed files with 2122 additions and 2048 deletions
|
@ -28,125 +28,129 @@
|
|||
# methods to use in your views. Some modify the output on-the-fly. And some
|
||||
# apply computationally-intensive changes to your final build files.
|
||||
|
||||
# Using for version parsing
|
||||
require "rubygems"
|
||||
|
||||
# Namespace extensions module
|
||||
module Middleman::CoreExtensions::Extensions
|
||||
module Middleman
|
||||
module CoreExtensions
|
||||
module Extensions
|
||||
|
||||
# Register extension
|
||||
class << self
|
||||
# @private
|
||||
def included(app)
|
||||
# app.set :default_extensions, []
|
||||
app.define_hook :after_configuration
|
||||
app.define_hook :before_configuration
|
||||
app.define_hook :build_config
|
||||
app.define_hook :development_config
|
||||
|
||||
app.extend ClassMethods
|
||||
app.send :include, InstanceMethods
|
||||
app.delegate :configure, :to => :"self.class"
|
||||
end
|
||||
end
|
||||
# Register extension
|
||||
class << self
|
||||
# @private
|
||||
def included(app)
|
||||
# Using for version parsing
|
||||
require "rubygems"
|
||||
|
||||
# Class methods
|
||||
module ClassMethods
|
||||
# Add a callback to run in a specific environment
|
||||
#
|
||||
# @param [String, Symbol] env The environment to run in
|
||||
# @return [void]
|
||||
def configure(env, &block)
|
||||
send("#{env}_config", &block)
|
||||
end
|
||||
|
||||
# Alias `extensions` to access registered extensions
|
||||
#
|
||||
# @return [Array<Module>]
|
||||
def extensions
|
||||
@extensions ||= []
|
||||
end
|
||||
|
||||
# Register a new extension
|
||||
#
|
||||
# @param [Module] extension Extension modules to register
|
||||
# @param [Hash] options Per-extension options hash
|
||||
# @return [void]
|
||||
def register(extension, options={}, &block)
|
||||
@extensions ||= []
|
||||
@extensions += [extension]
|
||||
# app.set :default_extensions, []
|
||||
app.define_hook :after_configuration
|
||||
app.define_hook :before_configuration
|
||||
app.define_hook :build_config
|
||||
app.define_hook :development_config
|
||||
|
||||
extend extension
|
||||
if extension.respond_to?(:registered)
|
||||
if extension.method(:registered).arity === 1
|
||||
extension.registered(self, &block)
|
||||
else
|
||||
extension.registered(self, options, &block)
|
||||
app.extend ClassMethods
|
||||
app.send :include, InstanceMethods
|
||||
app.delegate :configure, :to => :"self.class"
|
||||
end
|
||||
end
|
||||
|
||||
# Class methods
|
||||
module ClassMethods
|
||||
# Add a callback to run in a specific environment
|
||||
#
|
||||
# @param [String, Symbol] env The environment to run in
|
||||
# @return [void]
|
||||
def configure(env, &block)
|
||||
send("#{env}_config", &block)
|
||||
end
|
||||
|
||||
# Alias `extensions` to access registered extensions
|
||||
#
|
||||
# @return [Array<Module>]
|
||||
def extensions
|
||||
@extensions ||= []
|
||||
end
|
||||
|
||||
# Register a new extension
|
||||
#
|
||||
# @param [Module] extension Extension modules to register
|
||||
# @param [Hash] options Per-extension options hash
|
||||
# @return [void]
|
||||
def register(extension, options={}, &block)
|
||||
@extensions ||= []
|
||||
@extensions += [extension]
|
||||
|
||||
extend extension
|
||||
if extension.respond_to?(:registered)
|
||||
if extension.method(:registered).arity === 1
|
||||
extension.registered(self, &block)
|
||||
else
|
||||
extension.registered(self, options, &block)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# Instance methods
|
||||
module InstanceMethods
|
||||
# This method is available in the project's `config.rb`.
|
||||
# It takes a underscore-separated symbol, finds the appropriate
|
||||
# feature module and includes it.
|
||||
#
|
||||
# activate :lorem
|
||||
#
|
||||
# @param [Symbol, Module] ext Which extension to activate
|
||||
# @return [void]
|
||||
def activate(ext, options={}, &block)
|
||||
# Make :i18n a no-op
|
||||
return if ext == :i18n
|
||||
# Instance methods
|
||||
module InstanceMethods
|
||||
# This method is available in the project's `config.rb`.
|
||||
# It takes a underscore-separated symbol, finds the appropriate
|
||||
# feature module and includes it.
|
||||
#
|
||||
# activate :lorem
|
||||
#
|
||||
# @param [Symbol, Module] ext Which extension to activate
|
||||
# @return [void]
|
||||
def activate(ext, options={}, &block)
|
||||
# Make :i18n a no-op
|
||||
return if ext == :i18n
|
||||
|
||||
ext_module = if ext.is_a?(Module)
|
||||
ext
|
||||
else
|
||||
::Middleman::Extensions.load(ext.to_sym)
|
||||
end
|
||||
ext_module = if ext.is_a?(Module)
|
||||
ext
|
||||
else
|
||||
::Middleman::Extensions.load(ext.to_sym)
|
||||
end
|
||||
|
||||
if ext_module.nil?
|
||||
puts "== Unknown Extension: #{ext}"
|
||||
else
|
||||
puts "== Activating: #{ext}" if logging?
|
||||
self.class.register(ext_module, options, &block)
|
||||
end
|
||||
end
|
||||
if ext_module.nil?
|
||||
puts "== Unknown Extension: #{ext}"
|
||||
else
|
||||
puts "== Activating: #{ext}" if logging?
|
||||
self.class.register(ext_module, options, &block)
|
||||
end
|
||||
end
|
||||
|
||||
# Load features before starting server
|
||||
def initialize
|
||||
super
|
||||
# Load features before starting server
|
||||
def initialize
|
||||
super
|
||||
|
||||
self.class.inst = self
|
||||
run_hook :before_configuration
|
||||
self.class.inst = self
|
||||
run_hook :before_configuration
|
||||
|
||||
# Search the root of the project for required files
|
||||
$LOAD_PATH.unshift(root)
|
||||
# Search the root of the project for required files
|
||||
$LOAD_PATH.unshift(root)
|
||||
|
||||
# Check for and evaluate local configuration
|
||||
local_config = File.join(root, "config.rb")
|
||||
if File.exists? local_config
|
||||
puts "== Reading: Local config" if logging?
|
||||
instance_eval File.read(local_config), local_config, 1
|
||||
end
|
||||
# Check for and evaluate local configuration
|
||||
local_config = File.join(root, "config.rb")
|
||||
if File.exists? local_config
|
||||
puts "== Reading: Local config" if logging?
|
||||
instance_eval File.read(local_config), local_config, 1
|
||||
end
|
||||
|
||||
run_hook :build_config if build?
|
||||
run_hook :development_config if development?
|
||||
run_hook :build_config if build?
|
||||
run_hook :development_config if development?
|
||||
|
||||
run_hook :after_configuration
|
||||
run_hook :after_configuration
|
||||
|
||||
# Add in defaults
|
||||
default_extensions.each do |ext|
|
||||
activate ext
|
||||
end
|
||||
# Add in defaults
|
||||
default_extensions.each do |ext|
|
||||
activate ext
|
||||
end
|
||||
|
||||
if logging?
|
||||
self.class.extensions.each do |ext|
|
||||
puts "== Extension: #{ext}"
|
||||
if logging?
|
||||
self.class.extensions.each do |ext|
|
||||
puts "== Extension: #{ext}"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue