Class: RsUserPolicy::UserCollection
- Inherits:
-
Object
- Object
- RsUserPolicy::UserCollection
- Defined in:
- lib/rs_user_policy/user_collection.rb
Instance Method Summary collapse
- #[](href) ⇒ Object
- #add_permissions(account_href, permissions) ⇒ Object
-
#add_users(users) ⇒ Object
Adds users to this collection only if the collection does not already include the specified users.
-
#initialize ⇒ UserCollection
constructor
A new instance of UserCollection.
-
#users ⇒ Array<RsUserPolicy::User>
An array of RsUserPolicy::User added to the collection.
Constructor Details
#initialize ⇒ UserCollection
Returns a new instance of UserCollection.
25 26 27 |
# File 'lib/rs_user_policy/user_collection.rb', line 25 def initialize @users_by_href = {} end |
Instance Method Details
#[](href) ⇒ Object
49 50 51 |
# File 'lib/rs_user_policy/user_collection.rb', line 49 def [](href) @users_by_href[href] end |
#add_permissions(account_href, permissions) ⇒ Object
53 54 55 56 57 58 59 60 61 62 |
# File 'lib/rs_user_policy/user_collection.rb', line 53 def (account_href, ) .each do || user_href = .user.href unless @users_by_href.has_key?(user_href) user = .user.show() @users_by_href[user.href] = RsUserPolicy::User.new(user) end @users_by_href[user_href].(account_href, ) end end |
#add_users(users) ⇒ Object
Adds users to this collection only if the collection does not already include the specified users. The users RightScale API href is used as the unique identifier for deduplication
41 42 43 44 45 46 47 |
# File 'lib/rs_user_policy/user_collection.rb', line 41 def add_users(users) users.each do |user| unless @users_by_href.has_key?(user.href) @users_by_href[user.href] = RsUserPolicy::User.new(user) end end end |
#users ⇒ Array<RsUserPolicy::User>
Returns An array of RsUserPolicy::User added to the collection.
32 33 34 |
# File 'lib/rs_user_policy/user_collection.rb', line 32 def users @users_by_href.values end |