[Ruby-activeldap-commit] [ruby-activeldap commit] r197 - in trunk/lib/active_ldap: adapter association

codesite-noreply at google.com codesite-noreply at google.com
Sat May 26 02:46:18 EDT 2007


Author: koutou
Date: Fri May 25 23:46:12 2007
New Revision: 197

Modified:
   trunk/lib/active_ldap/adapter/base.rb
   trunk/lib/active_ldap/association/belongs_to_many.rb
   trunk/lib/active_ldap/association/has_many.rb

Log:
* don't find if there is no conditions for assosiation.


Modified: trunk/lib/active_ldap/adapter/base.rb
==============================================================================
--- trunk/lib/active_ldap/adapter/base.rb	(original)
+++ trunk/lib/active_ldap/adapter/base.rb	Fri May 25 23:46:12 2007
@@ -115,7 +115,7 @@
       end
 
       def search(options={})
-        filter = parse_filter(options[:filter] || 'objectClass=*')
+        filter = parse_filter(options[:filter]) || 'objectClass=*'
         attrs = options[:attributes] || []
         scope = ensure_scope(options[:scope])
         base = options[:base]

Modified: trunk/lib/active_ldap/association/belongs_to_many.rb
==============================================================================
--- trunk/lib/active_ldap/association/belongs_to_many.rb	(original)
+++ trunk/lib/active_ldap/association/belongs_to_many.rb	Fri May 25 23:46:12 2007
@@ -32,7 +32,11 @@
         components = values.collect do |value|
           [key, value]
         end
-        foreign_class.find(:all, :filter => [:or, *components])
+        if components.empty?
+          []
+        else
+          foreign_class.find(:all, :filter => [:or, *components])
+        end
       end
     end
   end

Modified: trunk/lib/active_ldap/association/has_many.rb
==============================================================================
--- trunk/lib/active_ldap/association/has_many.rb	(original)
+++ trunk/lib/active_ldap/association/has_many.rb	Fri May 25 23:46:12 2007
@@ -22,7 +22,11 @@
         end.reject do |key, val|
           key.nil? or val.nil?
         end
-        foreign_class.find(:all, :filter => [:or, *components])
+        if components.empty?
+          []
+        else
+          foreign_class.find(:all, :filter => [:or, *components])
+        end
       end
 
       def delete_entries(entries)


More information about the Ruby-activeldap-commit mailing list