class Middleman::ConfigExtension
def after_configuration
def after_configuration self.class.exposed_to_config.each do |k, v| ::Middleman::CoreExtensions::Collections::StepContext.add_to_context(k, &method(:"__original_#{v}")) end end
def initialize(app, config={}, &block)
def initialize(app, config={}, &block) @descriptors = {} @wrapped = {} self.class.exposed_to_config.each do |k, v| @descriptors[k] = [] define_singleton_method(:"__original_#{v}", &method(v)) define_singleton_method(v) do |*args, &b| @descriptors[k] << method(:"__original_#{v}").call(*args, &b) @app.sitemap.rebuild_resource_list!(:"first_run_change_#{v}") end end super end
def manipulate_resource_list(resources)
def manipulate_resource_list(resources) @descriptors.values.flatten.reduce(resources) do |sum, c| c.execute_descriptor(app, sum) end end