class Acl9::Dsl::Generators::FilterLambda

Public Class Methods

new(subject_method) click to toggle source
# File lib/acl9/controller_extensions/generators.rb, line 56
def initialize(subject_method)
  super

  @controller = 'controller'
end

Public Instance Methods

install_on(controller_class, options) click to toggle source
# File lib/acl9/controller_extensions/generators.rb, line 62
def install_on(controller_class, options)
  super

  controller_class.send(:before_action, options, &self.to_proc)
end
to_proc() click to toggle source
# File lib/acl9/controller_extensions/generators.rb, line 68
        def to_proc
          code = <<-RUBY
            lambda do |controller|
              unless #{allowance_expression}
                #{_access_denied}
              end
            end
          RUBY

          self.instance_eval(code, __FILE__, __LINE__)
        rescue SyntaxError
          raise FilterSyntaxError, code
        end