Class: CanTango::Permits::RoleGroupPermit::Builder
- Inherits:
-
CanTango::PermitEngine::Builder::Base
- Object
- CanTango::PermitEngine::Builder::Base
- CanTango::Permits::RoleGroupPermit::Builder
- Defined in:
- lib/cantango/permits/role_group_permit/builder.rb
Instance Attribute Summary
Attributes inherited from CanTango::PermitEngine::Builder::Base
Instance Method Summary collapse
-
#build ⇒ Array<RoleGroupPermit::Base>
builds a list of Permits for each role group of the current ability user (or account).
- #filter(role_group) ⇒ Object
- #valid?(role_group) ⇒ Boolean
Methods inherited from CanTango::PermitEngine::Builder::Base
Constructor Details
This class inherits a constructor from CanTango::PermitEngine::Builder::Base
Instance Method Details
#build ⇒ Array<RoleGroupPermit::Base>
builds a list of Permits for each role group of the current ability user (or account)
10 11 12 13 14 15 16 |
# File 'lib/cantango/permits/role_group_permit/builder.rb', line 10 def build # raise NoAvailableRoleGroups, "no available roles groups are defined" if available_role_groups.empty? role_groups.inject([]) do |permits, role_group| (permits << create_permit(role_group)) if valid?(role_group) permits end.compact end |
#filter(role_group) ⇒ Object
23 24 25 |
# File 'lib/cantango/permits/role_group_permit/builder.rb', line 23 def filter role_group CanTango::Filters::RoleGroupFilter.new role_group end |
#valid?(role_group) ⇒ Boolean
18 19 20 21 |
# File 'lib/cantango/permits/role_group_permit/builder.rb', line 18 def valid? role_group return true if !role_groups_filter? filter(role_group).valid? end |