class PM::User
TODO: there is repeated code in the following subclasses which I will DRY in the next PR. A user in a policy machine.
Public Class Methods
all(pm_storage_adapter, options = {})
click to toggle source
Return all policy elements of a particular type (e.g. all users)
# File lib/policy_machine/policy_element.rb, line 146 def self.all(pm_storage_adapter, options = {}) pm_storage_adapter.find_all_of_type_user(options).map do |stored_pe| convert_stored_pe_to_pe(stored_pe, pm_storage_adapter, PM::User) end end
create(unique_identifier, policy_machine_uuid, pm_storage_adapter, extra_attributes = {})
click to toggle source
# File lib/policy_machine/policy_element.rb, line 133 def self.create(unique_identifier, policy_machine_uuid, pm_storage_adapter, extra_attributes = {}) new_pe = new(unique_identifier, policy_machine_uuid, pm_storage_adapter, nil, extra_attributes) new_pe.stored_pe = pm_storage_adapter.add_user(unique_identifier, policy_machine_uuid, extra_attributes) new_pe end
Public Instance Methods
user_attributes(pm_storage_adapter)
click to toggle source
# File lib/policy_machine/policy_element.rb, line 139 def user_attributes(pm_storage_adapter) pm_storage_adapter.user_attributes_for_user(stored_pe).map do |stored_ua| self.class.convert_stored_pe_to_pe(stored_ua, pm_storage_adapter, PM::UserAttribute) end end
Protected Instance Methods
allowed_assignee_classes()
click to toggle source
# File lib/policy_machine/policy_element.rb, line 153 def allowed_assignee_classes [UserAttribute] end