Class: Mooset::Endpoints::Ldap::User

Inherits:
Models::User show all
Defined in:
lib/mooset/endpoints/ldap/user.rb

Class Method Summary collapse

Methods inherited from Resource

#endpoint, #initialize

Constructor Details

This class inherits a constructor from Mooset::Resource

Class Method Details

.build(endpoint_name, params) ⇒ Object



52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/mooset/endpoints/ldap/user.rb', line 52

def self.build(endpoint_name, params)
  user = Optional.new(params)

  self.new(
    endpoint_name: endpoint_name,
    id: user[:dn].value,
    dn: user[:dn].value,
    email: user[:mail].first.value,
    full_name: user[:cn].first.value,
    username: user[:sAMAccountName].value,
    memberof: user[:memberof].within { |groups| groups_from(endpoint_name, Many.new(groups)).values }.value,
    useraccountcontrol: AccountControl.decode(user[:useraccountcontrol][0].to_i),
  )
end

.groups_from(endpoint_name, groups) ⇒ Object



46
47
48
49
50
# File 'lib/mooset/endpoints/ldap/user.rb', line 46

def self.groups_from(endpoint_name, groups)
  groups.within do |group|
    Ldap::Group.build(endpoint_name, id: group)
  end
end