class Fog::Identity::OpenStack::V3::Group

def add_user user_id

def add_user user_id
  requires :id
  service.add_user_to_group(self.id, user_id)
end

def check_role(role_id)

def check_role(role_id)
  requires :id, :domain_id
  begin
    service.check_domain_group_role(self.domain_id, self.id, role_id)
  rescue Fog::Identity::OpenStack::NotFound
    return false
  end
  return true
end

def contains_user? user_id

def contains_user? user_id
  requires :id
  begin
    service.group_user_check(self.id, user_id)
  rescue Fog::Identity::OpenStack::NotFound
    return false
  end
  return true
end

def create

def create
  requires :name
  merge_attributes(
      service.create_group(attributes).body['group'])
  self
end

def destroy

def destroy
  requires :id
  service.delete_group(self.id)
  true
end

def grant_role(role_id)

def grant_role(role_id)
  requires :id, :domain_id
  service.grant_domain_group_role(self.domain_id, self.id, role_id)
end

def remove_user user_id

def remove_user user_id
  requires :id
  service.remove_user_from_group(self.id, user_id)
end

def revoke_role(role_id)

def revoke_role(role_id)
  requires :id, :domain_id
  service.revoke_domain_group_role(self.domain_id, self.id, role_id)
end

def roles

def roles
  requires :id, :domain_id
  service.list_domain_group_roles(self.domain_id, self.id).body['roles']
end

def to_s

def to_s
  self.name
end

def update(attr = nil)

def update(attr = nil)
  requires :id, :name
  merge_attributes(
      service.update_group(self.id, attr || attributes).body['group'])
  self
end

def users(attr = {})

def users(attr = {})
  requires :id
  service.list_group_users(self.id, attr).body['users']
end