Revision 776a7c72
Added by Marc Dequènes about 15 years ago
- ID 776a7c7289fedf6248719f64992ff88a07960ab6
lib/ldap_shadows/shadow.rb | ||
---|---|---|
current_dn_parts.unshift p_dn
|
||
current_dn = ActiveLdap::DistinguishedName.parse(current_dn_parts.join(","))
|
||
current_item = item_list[current_dn]
|
||
if current_item
|
||
p_item = Elements::LdapObject.raw_item_info(self, item_list[current_dn])[:name]
|
||
else
|
||
# fallback
|
||
p_item = p_dn
|
||
if current_item.nil?
|
||
current_item = ActiveLdap::Base.find(:first, :base => current_dn.to_s, :scope => :base, :attributes => [''])
|
||
item_list[current_dn] = current_item
|
||
end
|
||
p_item = Elements::LdapObject.raw_item_info(self, item_list[current_dn])[:name]
|
||
end
|
||
|
||
unless p_raw_tree.has_key?(p_dn)
|
||
... | ... | |
if raw
|
||
res = {base_dn.to_s => raw_tree}
|
||
else
|
||
base_obj = ActiveLdap::Base.find(:first, :base => base_dn.to_s, :scope => :base, :attributes => [])
|
||
base_obj = ActiveLdap::Base.find(:first, :base => base_dn.to_s, :scope => :base, :attributes => [''])
|
||
res = {Elements::LdapObject.raw_item_info(self, base_obj)[:name] => tree}
|
||
end
|
||
|
Also available in: Unified diff
[evol] try harder to find intermediate objects in tree