# File lib/active_ldap/configuration.rb, line 79
79: def configuration(key=nil)
80: @@defined_configurations[key || active_connection_name]
81: end
# File lib/active_ldap/configuration.rb, line 52
52: def default_configuration
53: DEFAULT_CONFIG.dup
54: end
# File lib/active_ldap/configuration.rb, line 83
83: def define_configuration(key, config)
84: @@defined_configurations[key] = config
85: end
# File lib/active_ldap/configuration.rb, line 87
87: def defined_configurations
88: @@defined_configurations
89: end
# File lib/active_ldap/configuration.rb, line 56
56: def ensure_configuration(config=nil)
57: if config.nil?
58: if defined?(LDAP_ENV)
59: config = LDAP_ENV
60: elsif defined?(RAILS_ENV)
61: config = RAILS_ENV
62: else
63: config = {}
64: end
65: end
66:
67: if config.is_a?(Symbol) or config.is_a?(String)
68: _config = configurations[config.to_s]
69: unless _config
70: raise ConnectionError,
71: _("%s connection is not configured") % config
72: end
73: config = _config
74: end
75:
76: config
77: end
# File lib/active_ldap/configuration.rb, line 102
102: def merge_configuration(user_configuration, target=self)
103: configuration = default_configuration
104: prepare_configuration(user_configuration).each do |key, value|
105: case key
106: when :base
107: # Scrub before inserting
108: target.base = value.gsub(/['}{#]/, '')
109: when :scope, :ldap_scope
110: if key == :ldap_scope
111: message = _(":ldap_scope configuration option is deprecated. " "Use :scope instead.")
112: ActiveSupport::Deprecation.warn(message)
113: end
114: target.scope = value
115: configuration[:scope] = value
116: else
117: configuration[key] = value
118: end
119: end
120: configuration
121: 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
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.