5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# File 'lib/active_ldap/compatible.rb', line 5
def convert_to_utf8_encoded_object(object)
case object
when Array
object.collect {|element| convert_to_utf8_encoded_object(element)}
when Hash
encoded = {}
object.each do |key, value|
key = convert_to_utf8_encoded_object(key)
value = convert_to_utf8_encoded_object(value)
encoded[key] = value
end
encoded
when String
encoded = object.dup
encoded.force_encoding("utf-8")
encoded = object unless encoded.valid_encoding?
encoded
else
object
end
end
|