Sha256: e1f7679a40947725ca631723037496de0c9f99e4aa9eebd6df97f8f032215b54

Contents?: true

Size: 528 Bytes

Versions: 3

Compression:

Stored size: 528 Bytes

Contents

module Controll::Flow::Action
  class PathAction < Base
    def perform
      raise BadPathError, "Bad path: #{path}" if path.blank?
      error_check!
      controller.send controller_action, self
    end

    def resolved_path
      controller.send(path)
    end

    protected

    # useful for path helpers used in event maps
    def method_missing(method_name, *args, &block)
      if controller.respond_to? method_name
        controller.send method_name, *args, &block
      else
        super
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
controll-0.3.2 lib/controll/flow/action/path_action.rb
controll-0.3.1 lib/controll/flow/action/path_action.rb
controll-0.3.0 lib/controll/flow/action/path_action.rb