class TroleGroups::Storage::EmbedMany
Public Class Methods
new(rolegroupsubject)
click to toggle source
constructor @param [Object] the role subject
Calls superclass method
TroleGroups::Storage::BaseMany::new
# File lib/trole_groups/storage/embed_many.rb, line 12 def initialize rolegroupsubject super end
Public Instance Methods
clear!()
click to toggle source
clears the role of the user in the data store
# File lib/trole_groups/storage/embed_many.rb, line 43 def clear! set_ds_field [] end
display_rolegroups()
click to toggle source
display the rolegroups as a list of symbols @return [Array<Symbol>] rolegroups list
# File lib/trole_groups/storage/embed_many.rb, line 25 def display_rolegroups return [] if !ds_field_value? ds_field_value.map{|rolegroup| rolegroup.name.to_sym } end
ds_field_value?()
click to toggle source
is it set?
# File lib/trole_groups/storage/embed_many.rb, line 31 def ds_field_value? ds_field_value && !ds_field_value.empty? end
rolegroups_to_embed(*rolegroups)
click to toggle source
# File lib/trole_groups/storage/embed_many.rb, line 16 def rolegroups_to_embed *rolegroups rolegroups.flatten.inject([]) do |res, role| res << create_role(role) res end end
set_default_role!()
click to toggle source
sets the role to its default state
# File lib/trole_groups/storage/embed_many.rb, line 48 def set_default_role! clear! end
set_rolegroups(*rolegroups)
click to toggle source
saves the rolegroups for the role subject in the data store @param [Array<Symbol>] rolegroups list
# File lib/trole_groups/storage/embed_many.rb, line 37 def set_rolegroups *rolegroups # creates and embeds new Role instances from symbols set_ds_field rolegroups_to_embed(*rolegroups) end
Protected Instance Methods
create_role(name)
click to toggle source
# File lib/trole_groups/storage/embed_many.rb, line 54 def create_role name rolegroup_model.create name end