Class: Conjur::Policy::Types::Grant

Inherits:
Base show all
Includes:
AutomaticRoleDSL, RoleMemberDSL
Defined in:
lib/conjur/policy/types/grant.rb

Instance Method Summary collapse

Methods included from AutomaticRoleDSL

#automatic_role

Methods included from RoleMemberDSL

included

Methods inherited from Base

#custom_attribute_names, #id_attribute, inherited, #referenced_records, register_yaml_type, #resource?, #role?, short_name

Methods included from InheritableAttribute

inherit_for, #inheritable_attr

Methods included from TypeChecking

#expect_array, #expect_boolean, #expect_hash, #expect_integer, #expect_layer, #expect_member, #expect_permission, #expect_record, #expect_resource, #expect_role, #expect_string, #expect_type, #test_resource, #test_role

Methods included from AttributeDefinition

#attribute, #define_field, #define_plural_field, #field?, #yaml_field?, #yaml_field_type

Instance Method Details

#to_sObject



50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'lib/conjur/policy/types/grant.rb', line 50

def to_s
  role_str   = if role.kind_of?(Array)
               then role.join(', ')
               else role
               end
  member_str = if member.kind_of?(Array)
               then member.map(&:role).join(', ')
               else member.role
               end
  admin      = if member.kind_of?(Array)
               then member.map(&:admin).all?
               else member.admin
               end
  "Grant #{role_str} to #{member_str}#{replace ? ' exclusively ' : ''}#{admin ? ' with admin option' : ''}"
end