Module: ADMapper::Group::ClassMethods

Defined in:
lib/admapper/group.rb

Instance Method Summary collapse

Instance Method Details

#find_all_in_ad_by_name(groupname) ⇒ Object



61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# File 'lib/admapper/group.rb', line 61

def find_all_in_ad_by_name(groupname)

  attrs = [ "cn", "ou" , "objectClass"]
  filter = Net::LDAP::Filter.eq( "objectClass", "group" )
  name_filter = Net::LDAP::Filter.eq( "cn", groupname )
  ad_connection = ADMapper::Connection.current_connection
  ad_groups = []
  
  ad_connection.search( :base => ADMapper::Connection.treebase,
                       :attributes => attrs, 
                       :filter => filter & name_filter ) do |entry|
                       ad_group = entry
                       if ad_group
                          group = self.new
                          group.map_group_from_ad(ad_group)
                          ad_groups << group
                       end
                       
                         
  end
   
  ad_groups
  
end

#find_in_ad_by_name(groupname) ⇒ Object



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/admapper/group.rb', line 43

def find_in_ad_by_name(groupname)
  attrs = [ "cn", "ou" , "objectClass"]
  filter = Net::LDAP::Filter.eq( "objectClass", "group" )
  name_filter = Net::LDAP::Filter.eq( "cn", groupname )
  ad_connection = ADMapper::Connection.current_connection
  ad_group = nil
  ad_connection.search( :base => ADMapper::Connection.treebase,
                       :attributes => attrs, 
                       :filter => filter & name_filter ) do |entry|
                       if entry
                          ad_group = self.new
                          ad_group.map_group_from_ad(entry)
                          break
                       end                
  end
  ad_group
  
end