class Aldous::Controller::Action::Precondition

Attributes

action[R]
controller[R]
view_builder[R]

Public Class Methods

build(action, controller, view_builder) click to toggle source
# File lib/aldous/controller/action/precondition.rb, line 10
def build(action, controller, view_builder)
  Aldous::Controller::Action::Precondition::Wrapper.new(new(action, controller, view_builder))
end
inherited(klass) click to toggle source
# File lib/aldous/controller/action/precondition.rb, line 18
def inherited(klass)
  ::Aldous.configuration.controller_methods_exposed_to_action.each do |method_name|
    unless klass.method_defined?(method_name)
      define_method method_name do
        controller.send(method_name)
      end
    end
  end
end
new(action, controller, view_builder) click to toggle source
# File lib/aldous/controller/action/precondition.rb, line 31
def initialize(action, controller, view_builder)
  @action = action
  @controller = controller
  @view_builder = view_builder
end
perform(action, controller, view_builder) click to toggle source
# File lib/aldous/controller/action/precondition.rb, line 14
def perform(action, controller, view_builder)
  build(action, controller, view_builder).perform
end

Public Instance Methods

build_view(respondable_class, extra_data = {}) click to toggle source

NOTE deprecated

# File lib/aldous/controller/action/precondition.rb, line 44
def build_view(respondable_class, extra_data = {}) # deprecated
  view_builder.build(respondable_class, extra_data)
end
perform() click to toggle source
# File lib/aldous/controller/action/precondition.rb, line 37
def perform
  raise NotImplementedError.new("#{self.class.name} must implement method #perform")
end