class PuppetGenerator::Middleware::ExecuteActions

Public Class Methods

new(app) click to toggle source
# File lib/puppet_generator/middleware/execute_actions.rb, line 5
def initialize(app)
  @app = app
end

Public Instance Methods

call(task) click to toggle source
# File lib/puppet_generator/middleware/execute_actions.rb, line 9
def call(task)
  PuppetGenerator.logger.debug(self.class.name){ "Execute action \"#{task.meta[:requested_actions].join(", ")}\" on output." }

  task.body = execute_actions( task.meta[:requested_actions] , task )

  @app.call(task)
end

Private Instance Methods

execute_actions(actions, task) click to toggle source
# File lib/puppet_generator/middleware/execute_actions.rb, line 19
def execute_actions(actions, task)

  module_name = task.meta[:module]
  data = task.body

  actions.inject(data) do |data,action|
    active_action = Models::Action.find action
    raise Exceptions::UnknownAction unless active_action

    data = active_action.run( task , data )
  end
end