Sha256: f17cb0e68f9a1f6c26ef5a33a76fa116d8323987f46e22353c2747331c41fd42
Contents?: true
Size: 427 Bytes
Versions: 2
Compression:
Stored size: 427 Bytes
Contents
module Ostiary class Ostiary attr_accessor :policies def initialize @policies = [] end def authorize!(action, &block) policies.each do |policy| next if policy.met?(action, block) raise PolicyBroken, policy.error_message(action) end end def authorized?(action, &block) policies.all? do |policy| policy.met?(action, block) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ostiary-0.11.0 | lib/ostiary/ostiary.rb |
ostiary-0.10.0 | lib/ostiary/ostiary.rb |