class GraphqlRails::Controller::ActionHook

stores information about controller hooks like before_action, after_action, etc.

Attributes

action_proc[R]
except_actions[R]
name[R]
only_actions[R]

Public Class Methods

new(name: nil, only: [], except: [], &action_proc) click to toggle source
# File lib/graphql_rails/controller/action_hook.rb, line 9
def initialize(name: nil, only: [], except: [], &action_proc)
  @name = name
  @action_proc = action_proc
  @only_actions = Array(only).map(&:to_sym)
  @except_actions = Array(except).map(&:to_sym)
end

Public Instance Methods

anonymous?() click to toggle source
# File lib/graphql_rails/controller/action_hook.rb, line 26
def anonymous?
  !!action_proc # rubocop:disable Style/DoubleNegation
end
applicable_for?(action_name) click to toggle source
# File lib/graphql_rails/controller/action_hook.rb, line 16
def applicable_for?(action_name)
  if only_actions.any?
    only_actions.include?(action_name.to_sym)
  elsif except_actions.any?
    !except_actions.include?(action_name.to_sym)
  else
    true
  end
end