class RsUserPolicy::UserCollection

Public Class Methods

new() click to toggle source
# File lib/rs_user_policy/user_collection.rb, line 25
def initialize
  @users_by_href = {}
end

Public Instance Methods

[](href) click to toggle source
# File lib/rs_user_policy/user_collection.rb, line 49
def [](href)
  @users_by_href[href]
end
add_permissions(account_href, permissions) click to toggle source
# File lib/rs_user_policy/user_collection.rb, line 53
def add_permissions(account_href, permissions)
  permissions.each do |permission|
    user_href = permission.user.href
    unless @users_by_href.has_key?(user_href)
      user = permission.user.show()
      @users_by_href[user.href] = RsUserPolicy::User.new(user)
    end
    @users_by_href[user_href].add_permission(account_href, permission)
  end
end
add_users(users) click to toggle source

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

@param [Array<RightApi::ResourceDetail>] users An array of RightAPI::ResourceDetail for the resource type “user”

# 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() click to toggle source

@return [Array<RsUserPolicy::User>] An array of RsUserPolicy::User added to the collection

# File lib/rs_user_policy/user_collection.rb, line 32
def users
  @users_by_href.values
end