# File lib/active_ldap/configuration.rb, line 79 def configuration(key=nil) @@defined_configurations[key || active_connection_name] end
# File lib/active_ldap/configuration.rb, line 52 def default_configuration DEFAULT_CONFIG.dup end
# File lib/active_ldap/configuration.rb, line 83 def define_configuration(key, config) @@defined_configurations[key] = config end
# File lib/active_ldap/configuration.rb, line 87 def defined_configurations @@defined_configurations end
# File lib/active_ldap/configuration.rb, line 56 def ensure_configuration(config=nil) if config.nil? if defined?(LDAP_ENV) config = LDAP_ENV elsif defined?(RAILS_ENV) config = RAILS_ENV else config = {} end end if config.is_a?(Symbol) or config.is_a?(String) _config = configurations[config.to_s] unless _config raise ConnectionError, _("%s connection is not configured") % config end config = _config end config end
# File lib/active_ldap/configuration.rb, line 102 def merge_configuration(user_configuration, target=self) configuration = default_configuration prepare_configuration(user_configuration).each do |key, value| case key when :base # Scrub before inserting target.base = value.gsub(/['}{#]/, '') when :scope, :ldap_scope if key == :ldap_scope message = _(":ldap_scope configuration option is deprecated. " "Use :scope instead.") ActiveSupport::Deprecation.warn(message) end target.scope = value configuration[:scope] = value else configuration[key] = value end end configuration end
# File lib/active_ldap/configuration.rb, line 124 def prepare_configuration(configuration) configuration = configuration.symbolize_keys uri = configuration.delete(:uri) return configuration unless uri begin uri = URI.parse(uri) rescue URI::InvalidURIError raise ConfigurationError.new(_("invalid URI: %s") % uri) end unless uri.is_a?(URI::LDAP) raise ConfigurationError.new(_("not a LDAP URI: %s") % uri.to_s) end uri_configuration = {:port => uri.port} uri_configuration[:host] = uri.host if uri.host uri_configuration[:bind_dn] = uri.dn if uri.dn uri_configuration[:scope] = uri.scope if uri.scope uri_configuration[:method] = :ssl if uri.is_a?(URI::LDAPS) uri_configuration.merge(configuration) end
Generated with the Darkfish Rdoc Generator 2.