]> source.dussan.org Git - nextcloud-server.git/commitdiff
LDAP: fix background job, resolves #3528
authorArthur Schiwon <blizzz@owncloud.com>
Tue, 18 Jun 2013 18:03:59 +0000 (20:03 +0200)
committerArthur Schiwon <blizzz@owncloud.com>
Fri, 19 Jul 2013 16:41:29 +0000 (18:41 +0200)
apps/user_ldap/lib/jobs.php

index 60ecc0da33df57bf473a71403f14f13ec286ce7c..d626afed6c3b9886e1b04df31002d580bf5a0786 100644 (file)
@@ -134,21 +134,19 @@ class Jobs extends \OC\BackgroundJob\TimedJob {
                        \OCP\Util::DEBUG);
        }
 
-       static private function getConnector() {
-               if(!is_null(self::$connector)) {
-                       return self::$connector;
-               }
-               self::$connector = new \OCA\user_ldap\lib\Connection('user_ldap');
-               return self::$connector;
-       }
-
        static private function getGroupBE() {
                if(!is_null(self::$groupBE)) {
                        return self::$groupBE;
                }
-               self::getConnector();
-               self::$groupBE = new \OCA\user_ldap\GROUP_LDAP();
-               self::$groupBE->setConnector(self::$connector);
+               $configPrefixes = Helper::getServerConfigurationPrefixes(true);
+               if(count($configPrefixes) == 1) {
+                       //avoid the proxy when there is only one LDAP server configured
+                       $connector = new Connection($configPrefixes[0]);
+                       self::$groupBE = new \OCA\user_ldap\GROUP_LDAP();
+                       self::$groupBE->setConnector($connector);
+               } else {
+                       self::$groupBE = new \OCA\user_ldap\Group_Proxy($configPrefixes);
+               }
 
                return self::$groupBE;
        }