| Module | ActiveLdap::Connection |
| In: |
lib/active_ldap/connection.rb
|
# File lib/active_ldap/connection.rb, line 3 3: def self.included(base) 4: base.extend(ClassMethods) 5: end
# File lib/active_ldap/connection.rb, line 206
206: def connected?
207: connection != self.class.connection
208: end
# File lib/active_ldap/connection.rb, line 198
198: def connection
199: conn = @connection
200: if get_attribute_before_type_cast(dn_attribute)[1]
201: conn ||= self.class.active_connections[dn] || retrieve_connection
202: end
203: conn || self.class.connection
204: end
# File lib/active_ldap/connection.rb, line 210
210: def connection=(adapter)
211: if adapter.nil? or adapter.is_a?(Adapter::Base)
212: @connection = adapter
213: elsif adapter.is_a?(Hash)
214: config = adapter
215: @connection = self.class.instantiate_adapter(config)
216: else
217: establish_connection(adapter)
218: end
219: end
# File lib/active_ldap/connection.rb, line 184
184: def establish_connection(config=nil)
185: config = self.class.ensure_configuration(config)
186: config = self.class.configuration.merge(config)
187: config = self.class.merge_configuration(config, self)
188:
189: remove_connection
190: self.class.define_configuration(dn, config)
191: end
# File lib/active_ldap/connection.rb, line 193
193: def remove_connection
194: self.class.remove_connection(dn)
195: @connection = nil
196: end
# File lib/active_ldap/connection.rb, line 221
221: def retrieve_connection
222: conn = self.class.active_connections[dn]
223: return conn if conn
224:
225: config = self.class.configuration(dn)
226: return nil unless config
227:
228: conn = self.class.instantiate_adapter(config)
229: @connection = self.class.active_connections[dn] = conn
230: conn
231: end