class MSS::Core::Policy::OperatorBuilder
Convenient syntax for expressing operators in statement condition blocks. For example, the following:
policy.allow.where(:s3_prefix).not("forbidden"). where(:current_time).lte(Date.today+1)
is equivalent to:
conditions = Policy::ConditionBlock.new conditions.add(:not, :s3_prefix, "forbidden") conditions.add(:lte, :current_time, Date.today+1) policy.allow(:conditions => conditions)
@see ConditionBlock#add
Public Class Methods
new(condition_builder, key)
click to toggle source
@api private
# File lib/mss/core/policy.rb, line 164 def initialize(condition_builder, key) @condition_builder = condition_builder @key = key end
Public Instance Methods
method_missing(m, *values)
click to toggle source
# File lib/mss/core/policy.rb, line 169 def method_missing(m, *values) @condition_builder.conditions.add(m, @key, *values) @condition_builder end