class ActiveEndpoint::Routes::ConstraintRule
Public Class Methods
new(request)
click to toggle source
# File lib/active_endpoint/routes/constraint_rule.rb, line 7 def initialize(request) @request = request @rules = ActiveEndpoint.constraints end
Public Instance Methods
rule()
click to toggle source
# File lib/active_endpoint/routes/constraint_rule.rb, line 12 def rule { key: "#{prefix}:#{@request[:endpoint]}" }.merge(fetch_constraints) end
Private Instance Methods
fetch_constraints()
click to toggle source
# File lib/active_endpoint/routes/constraint_rule.rb, line 28 def fetch_constraints if prefix == :defaults default_constraints else constraints = @rules.public_send(prefix)[@request[:endpoint]] constraints.present? ? constraints : default_constraints end end
prefix()
click to toggle source
# File lib/active_endpoint/routes/constraint_rule.rb, line 20 def prefix return :endpoints if @rules.present_endpoint?(@request) return :resources if @rules.present_resource?(@request) return :actions if @rules.present_action?(@request) return :scopes if @rules.present_scope?(@request) :defaults end