Module: ActiveLdap::Connection
- Defined in:
- lib/active_ldap/connection.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
- #connected? ⇒ Boolean
- #connection ⇒ Object
- #connection=(adapter) ⇒ Object
- #establish_connection(config = nil) ⇒ Object
- #remove_connection ⇒ Object
- #retrieve_connection ⇒ Object
- #schema ⇒ Object
- #setup_connection(config = nil) ⇒ Object
Class Method Details
.included(base) ⇒ Object
3 4 5 |
# File 'lib/active_ldap/connection.rb', line 3 def self.included(base) base.extend(ClassMethods) end |
Instance Method Details
#connected? ⇒ Boolean
261 262 263 |
# File 'lib/active_ldap/connection.rb', line 261 def connected? connection != self.class.connection end |
#connection ⇒ Object
246 247 248 249 250 251 252 253 254 255 256 257 258 259 |
# File 'lib/active_ldap/connection.rb', line 246 def connection conn = @connection return conn if conn have_dn = !@dn.nil? if !have_dn and attribute_name_resolvable_without_connection? begin have_dn = !get_attribute_before_type_cast(dn_attribute)[1].nil? rescue DistinguishedNameInvalid end end conn = self.class.active_connections[dn] || retrieve_connection if have_dn conn || self.class.connection end |
#connection=(adapter) ⇒ Object
265 266 267 268 269 270 271 272 273 274 |
# File 'lib/active_ldap/connection.rb', line 265 def connection=(adapter) if adapter.nil? or adapter.is_a?(Adapter::Base) @connection = adapter elsif adapter.is_a?(Hash) config = adapter @connection = self.class.instantiate_adapter(config) else setup_connection(adapter) end end |
#establish_connection(config = nil) ⇒ Object
232 233 234 235 236 237 238 239 |
# File 'lib/active_ldap/connection.rb', line 232 def establish_connection(config=nil) = _("ActiveLdap::Connection#establish_connection has been deprecated " \ "since 1.1.0. " \ "Please use ActiveLdap::Connection#setup_connection instead.") ActiveSupport::Deprecation.warn() setup_connection(config) end |
#remove_connection ⇒ Object
241 242 243 244 |
# File 'lib/active_ldap/connection.rb', line 241 def remove_connection self.class.remove_connection(dn) @connection = nil end |
#retrieve_connection ⇒ Object
276 277 278 279 280 281 282 283 284 285 286 |
# File 'lib/active_ldap/connection.rb', line 276 def retrieve_connection conn = self.class.active_connections[dn] return conn if conn config = self.class.configuration(dn) return nil unless config conn = self.class.instantiate_adapter(config) @connection = self.class.active_connections[dn] = conn conn end |
#schema ⇒ Object
288 289 290 |
# File 'lib/active_ldap/connection.rb', line 288 def schema connection.schema end |
#setup_connection(config = nil) ⇒ Object
223 224 225 226 227 228 229 230 |
# File 'lib/active_ldap/connection.rb', line 223 def setup_connection(config=nil) config = self.class.ensure_configuration(config) config = self.class.configuration.merge(config) config = self.class.merge_configuration(config, self) remove_connection self.class.define_configuration(dn, config) end |