Class: Middleman::ConfigContext
- Inherits:
-
Object
- Object
- Middleman::ConfigContext
- Extended by:
- Forwardable
- Defined in:
- lib/middleman-core/config_context.rb
Instance Attribute Summary collapse
-
#app ⇒ Object
readonly
Returns the value of attribute app.
Instance Method Summary collapse
- #helpers(*helper_modules, &block) ⇒ Object
- #include_environment(name) ⇒ Object
-
#initialize(app, template_context_class) ⇒ ConfigContext
constructor
A new instance of ConfigContext.
-
#mime_type(type, value)
Add a new mime-type for a specific extension.
- #set(key, default = nil, &block) ⇒ Object
Constructor Details
#initialize(app, template_context_class) ⇒ ConfigContext
Returns a new instance of ConfigContext.
14 15 16 17 18 19 20 21 22 23 |
# File 'lib/middleman-core/config_context.rb', line 14 def initialize(app, template_context_class) @app = app @template_context_class = template_context_class @callbacks = ::Middleman::CallbackManager.new @callbacks.install_methods!(self, [:before_build, :after_build, :configure, :after_configuration, :ready]) # Trigger internal callbacks when app level are executed. app.subscribe_to_callbacks(&method(:execute_callbacks)) end |
Instance Attribute Details
#app ⇒ Object (readonly)
Returns the value of attribute app.
8 9 10 |
# File 'lib/middleman-core/config_context.rb', line 8 def app @app end |
Instance Method Details
#helpers(*helper_modules, &block) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/middleman-core/config_context.rb', line 25 def helpers(*helper_modules, &block) helper_modules ||= [] if block_given? block_module = Module.new block_module.module_eval(&block) helper_modules << block_module end helper_modules.each do |mod| @template_context_class.send :include, mod end end |
#include_environment(name) ⇒ Object
39 40 41 42 43 44 45 46 |
# File 'lib/middleman-core/config_context.rb', line 39 def include_environment(name) path = File.dirname(__FILE__) other_config = File.join(path, name.to_s) return unless File.exist? other_config instance_eval File.read(other_config), other_config, 1 end |
#mime_type(type, value)
This method returns an undefined value.
Add a new mime-type for a specific extension
58 59 60 61 |
# File 'lib/middleman-core/config_context.rb', line 58 def mime_type(type, value) type = ".#{type}" unless type.to_s[0] == '.' ::Rack::Mime::MIME_TYPES[type] = value end |
#set(key, default = nil, &block) ⇒ Object
48 49 50 51 |
# File 'lib/middleman-core/config_context.rb', line 48 def set(key, default=nil, &block) config.define_setting(key, default) unless config.defines_setting?(key) @app.config[key] = block_given? ? block : default end |