# File lib/active_ldap/operations.rb, line 546 def add_entry(dn, attributes, options={}) unnormalized_attributes = attributes.collect do |key, value| [:add, key, unnormalize_attribute(key, value)] end options[:connection] ||= connection options[:connection].add(dn, unnormalized_attributes, options) end
# File lib/active_ldap/operations.rb, line 554 def modify_entry(dn, attributes, options={}) return if attributes.empty? unnormalized_attributes = attributes.collect do |type, key, value| [type, key, unnormalize_attribute(key, value)] end options[:connection] ||= connection options[:connection].modify(dn, unnormalized_attributes, options) end
# File lib/active_ldap/operations.rb, line 563 def modify_rdn_entry(dn, new_rdn, delete_old_rdn, new_superior, options={}) options[:connection] ||= connection options[:connection].modify_rdn(dn, new_rdn, delete_old_rdn, new_superior, options) end
# File lib/active_ldap/operations.rb, line 569 def update(dn, attributes, options={}) if dn.is_a?(Array) i = -1 dns = dn dns.collect do |_dn| i += 1 update(_dn, attributes[i], options) end else object = find(dn, options) object.update_attributes(attributes) object end end
# File lib/active_ldap/operations.rb, line 584 def update_all(attributes, filter=nil, options={}) search_options = options.dup if filter if filter.is_a?(String) and /[=\(\)&\|]/ !~ filter search_options = search_options.merge(:value => filter) else search_options = search_options.merge(:filter => filter) end end targets = search(search_options).collect do |dn, attrs| dn end unnormalized_attributes = attributes.collect do |name, value| normalized_name, normalized_value = normalize_attribute(name, value) [:replace, normalized_name, unnormalize_attribute(normalized_name, normalized_value)] end options[:connection] ||= connection conn = options[:connection] targets.each do |dn| conn.modify(dn, unnormalized_attributes, options) end end
Generated with the Darkfish Rdoc Generator 2.