Module: ActiveLdap::Operations::Delete
- Defined in:
- lib/active_ldap/operations.rb
Instance Method Summary collapse
- #delete(targets, options = {}) ⇒ Object
- #delete_all(filter = nil, options = {}) ⇒ Object
- #delete_entry(dn, options = {}) ⇒ Object
- #destroy(targets, options = {}) ⇒ Object
- #destroy_all(filter = nil, options = {}) ⇒ Object
Instance Method Details
#delete(targets, options = {}) ⇒ Object
444 445 446 447 448 449 450 |
# File 'lib/active_ldap/operations.rb', line 444 def delete(targets, ={}) targets = [targets] unless targets.is_a?(Array) targets = targets.collect do |target| ensure_dn_attribute(ensure_base(target)) end delete_entry(targets, ) end |
#delete_all(filter = nil, options = {}) ⇒ Object
457 458 459 460 461 462 463 464 465 466 467 468 469 |
# File 'lib/active_ldap/operations.rb', line 457 def delete_all(filter=nil, ={}) = {:base => base, :scope => scope}.merge() = .merge(:filter => filter) if filter [:connection] ||= connection conn = [:connection] targets = conn.search().collect do |dn, attributes| dn end.sort_by do |dn| dn.upcase.reverse end.reverse conn.delete(targets) end |
#delete_entry(dn, options = {}) ⇒ Object
452 453 454 455 |
# File 'lib/active_ldap/operations.rb', line 452 def delete_entry(dn, ={}) [:connection] ||= connection [:connection].delete(dn, ) end |
#destroy(targets, options = {}) ⇒ Object
423 424 425 426 427 428 |
# File 'lib/active_ldap/operations.rb', line 423 def destroy(targets, ={}) targets = [targets] unless targets.is_a?(Array) targets.each do |target| find(target, ).destroy end end |
#destroy_all(filter = nil, options = {}) ⇒ Object
430 431 432 433 434 435 436 437 438 439 440 441 442 |
# File 'lib/active_ldap/operations.rb', line 430 def destroy_all(filter=nil, ={}) targets = [] if filter.is_a?(Hash) = .merge(filter) filter = nil end = .merge(:filter => filter) if filter find(:all, ).sort_by do |target| target.dn.reverse end.reverse.each do |target| target.destroy end end |