# File lib/active_ldap/adapter/jndi_connection.rb, line 128 def add(dn, records) attributes = BasicAttributes.new records.each do |record| attributes.put(record.to_java_attribute) end @context.create_subcontext(dn, attributes) end
# File lib/active_ldap/adapter/jndi_connection.rb, line 103 def bind_as_anonymous setup_context(nil, nil, "none") bound? end
# File lib/active_ldap/adapter/jndi_connection.rb, line 89 def bound? not @context.nil? end
# File lib/active_ldap/adapter/jndi_connection.rb, line 150 def delete(dn) @context.destroy_subcontext(dn) end
# File lib/active_ldap/adapter/jndi_connection.rb, line 136 def modify(dn, records) items = records.collect(&:to_java_modification_item) @context.modify_attributes(dn, items.to_java(ModificationItem)) end
# File lib/active_ldap/adapter/jndi_connection.rb, line 141 def modify_rdn(dn, new_rdn, delete_old_rdn) # should use mutex delete_rdn_key = "java.naming.ldap.deleteRDN" @context.add_to_environment(delete_rdn_key, delete_old_rdn.to_s) @context.rename(dn, new_rdn) ensure @context.remove_from_environment(delete_rdn_key) end
# File lib/active_ldap/adapter/jndi_connection.rb, line 93 def sasl_bind(bind_dn, mechanism, quiet) setup_context(bind_dn, password, mechanism) bound? end
# File lib/active_ldap/adapter/jndi_connection.rb, line 108 def search(base, scope, filter, attrs, limit) controls = SearchControls.new controls.search_scope = scope controls.count_limit = limit if limit unless attrs.blank? controls.returning_attributes = attrs.to_java(:string) end @context.search(base, filter, controls).each do |result| attributes = {} result.attributes.get_all.each do |attribute| attributes[attribute.get_id] = attribute.get_all.collect do |value| value.is_a?(String) ? value : String.from_java_bytes(value) end end yield([result.name_in_namespace, attributes]) end end
Generated with the Darkfish Rdoc Generator 2.