Module | ActiveLdap::Configuration::ClassMethods |
In: |
lib/active_ldap/configuration.rb
|
CONNECTION_CONFIGURATION_KEYS | = | [:uri, :base, :adapter] |
# File lib/active_ldap/configuration.rb, line 78 78: def configuration(key=nil) 79: @@defined_configurations[key || active_connection_name] 80: end
# File lib/active_ldap/configuration.rb, line 51 51: def default_configuration 52: DEFAULT_CONFIG.dup 53: end
# File lib/active_ldap/configuration.rb, line 82 82: def define_configuration(key, config) 83: @@defined_configurations[key] = config 84: end
# File lib/active_ldap/configuration.rb, line 86 86: def defined_configurations 87: @@defined_configurations 88: end
# File lib/active_ldap/configuration.rb, line 55 55: def ensure_configuration(config=nil) 56: if config.nil? 57: if defined?(LDAP_ENV) 58: config = LDAP_ENV 59: elsif defined?(RAILS_ENV) 60: config = RAILS_ENV 61: else 62: config = {} 63: end 64: end 65: 66: if config.is_a?(Symbol) or config.is_a?(String) 67: _config = configurations[config.to_s] 68: unless _config 69: raise ConnectionError, 70: _("%s connection is not configured") % config 71: end 72: config = _config 73: end 74: 75: config 76: end
# File lib/active_ldap/configuration.rb, line 101 101: def merge_configuration(user_configuration, target=self) 102: configuration = default_configuration 103: prepare_configuration(user_configuration).each do |key, value| 104: case key 105: when :base 106: # Scrub before inserting 107: target.base = value.gsub(/['}{#]/, '') 108: when :scope, :ldap_scope 109: if key == :ldap_scope 110: logger.warning do 111: _(":ldap_scope configuration option is deprecated. " \ 112: "Use :scope instead.") 113: end 114: end 115: target.scope = value 116: configuration[:scope] = value 117: else 118: configuration[key] = value 119: end 120: end 121: configuration 122: end
# File lib/active_ldap/configuration.rb, line 124 124: def prepare_configuration(configuration) 125: configuration = configuration.symbolize_keys 126: uri = configuration.delete(:uri) 127: return configuration unless uri 128: 129: begin 130: uri = URI.parse(uri) 131: rescue URI::InvalidURIError 132: raise ConfigurationError.new(_("invalid URI: %s") % uri) 133: end 134: unless uri.is_a?(URI::LDAP) 135: raise ConfigurationError.new(_("not a LDAP URI: %s") % uri.to_s) 136: end 137: 138: uri_configuration = {:port => uri.port} 139: uri_configuration[:host] = uri.host if uri.host 140: uri_configuration[:bind_dn] = uri.dn if uri.dn 141: uri_configuration[:scope] = uri.scope if uri.scope 142: uri_configuration[:method] = :ssl if uri.is_a?(URI::LDAPS) 143: uri_configuration.merge(configuration) 144: end
# File lib/active_ldap/configuration.rb, line 90 90: def remove_configuration_by_configuration(config) 91: @@defined_configurations.delete_if {|key, value| value == config} 92: end