summaryrefslogtreecommitdiffstats
path: root/apps/user_ldap/lib
diff options
context:
space:
mode:
Diffstat (limited to 'apps/user_ldap/lib')
-rw-r--r--apps/user_ldap/lib/jobs.php8
-rw-r--r--apps/user_ldap/lib/proxy.php8
-rw-r--r--apps/user_ldap/lib/user/manager.php56
3 files changed, 35 insertions, 37 deletions
diff --git a/apps/user_ldap/lib/jobs.php b/apps/user_ldap/lib/jobs.php
index e8e6df0b9d0..a887b65251c 100644
--- a/apps/user_ldap/lib/jobs.php
+++ b/apps/user_ldap/lib/jobs.php
@@ -164,16 +164,18 @@ class Jobs extends \OC\BackgroundJob\TimedJob {
$ldapWrapper = new LDAP();
if(count($configPrefixes) === 1) {
//avoid the proxy when there is only one LDAP server configured
+ $dbc = \OC::$server->getDatabaseConnection();
$userManager = new user\Manager(
\OC::$server->getConfig(),
new FilesystemHelper(),
new LogWrapper(),
\OC::$server->getAvatarManager(),
- new \OCP\Image());
+ new \OCP\Image(),
+ $dbc);
$connector = new Connection($ldapWrapper, $configPrefixes[0]);
$ldapAccess = new Access($connector, $ldapWrapper, $userManager);
- $groupMapper = new GroupMapping(\OC::$server->getDatabaseConnection());
- $userMapper = new UserMapping(\OC::$server->getDatabaseConnection());
+ $groupMapper = new GroupMapping($dbc);
+ $userMapper = new UserMapping($dbc);
$ldapAccess->setGroupMapper($groupMapper);
$ldapAccess->setUserMapper($userMapper);
self::$groupBE = new \OCA\user_ldap\GROUP_LDAP($ldapAccess);
diff --git a/apps/user_ldap/lib/proxy.php b/apps/user_ldap/lib/proxy.php
index 39d4b36c8bb..b4e6e33c1f4 100644
--- a/apps/user_ldap/lib/proxy.php
+++ b/apps/user_ldap/lib/proxy.php
@@ -49,16 +49,18 @@ abstract class Proxy {
static $avatarM;
static $userMap;
static $groupMap;
+ static $db;
if(is_null($fs)) {
$ocConfig = \OC::$server->getConfig();
$fs = new FilesystemHelper();
$log = new LogWrapper();
$avatarM = \OC::$server->getAvatarManager();
- $userMap = new UserMapping(\OC::$server->getDatabaseConnection());
- $groupMap = new GroupMapping(\OC::$server->getDatabaseConnection());
+ $db = \OC::$server->getDatabaseConnection();
+ $userMap = new UserMapping($db);
+ $groupMap = new GroupMapping($db);
}
$userManager =
- new user\Manager($ocConfig, $fs, $log, $avatarM, new \OCP\Image());
+ new user\Manager($ocConfig, $fs, $log, $avatarM, new \OCP\Image(), $db);
$connector = new Connection($this->ldap, $configPrefix);
$access = new Access($connector, $this->ldap, $userManager);
$access->setUserMapper($userMap);
diff --git a/apps/user_ldap/lib/user/manager.php b/apps/user_ldap/lib/user/manager.php
index 955a2923a64..ec50e031281 100644
--- a/apps/user_ldap/lib/user/manager.php
+++ b/apps/user_ldap/lib/user/manager.php
@@ -36,30 +36,27 @@ use OCA\user_ldap\lib\user\OfflineUser;
* cache
*/
class Manager {
- /**
- * @var IUserTools
- */
+ /** @var IUserTools */
protected $access;
- /**
- * @var \OCP\IConfig
- */
+
+ /** @var \OCP\IConfig */
protected $ocConfig;
- /**
- * @var FilesystemHelper
- */
+
+ /** @var \OCP\IDBConnection */
+ protected $db;
+
+ /** @var FilesystemHelper */
protected $ocFilesystem;
- /**
- * @var LogWrapper
- */
+
+ /** @var LogWrapper */
protected $ocLog;
- /**
- * @var \OCP\Image
- */
+
+ /** @var \OCP\Image */
protected $image;
- /**
- * @param \OCP\IAvatarManager
- */
+
+ /** @param \OCP\IAvatarManager */
protected $avatarManager;
+
/**
* array['byDN'] \OCA\user_ldap\lib\User[]
* ['byUid'] \OCA\user_ldap\lib\User[]
@@ -71,28 +68,25 @@ class Manager {
);
/**
- * @brief Constructor
- * @param \OCP\IConfig
- * @param \OCA\user_ldap\lib\FilesystemHelper object that gives access to
- * necessary functions from the OC filesystem
- * @param \OCA\user_ldap\lib\LogWrapper
- * @param \OCP\IAvatarManager
- * @param \OCP\Image an empty image instance
+ * @param \OCP\IConfig $ocConfig
+ * @param \OCA\user_ldap\lib\FilesystemHelper $ocFilesystem object that
+ * gives access to necessary functions from the OC filesystem
+ * @param \OCA\user_ldap\lib\LogWrapper $ocLog
+ * @param \OCP\IAvatarManager $avatarManager
+ * @param \OCP\Image $image an empty image instance
+ * @param \OCP\IDBConnection $db
* @throws Exception when the methods mentioned above do not exist
*/
public function __construct(\OCP\IConfig $ocConfig,
FilesystemHelper $ocFilesystem, LogWrapper $ocLog,
- \OCP\IAvatarManager $avatarManager, \OCP\Image $image) {
+ \OCP\IAvatarManager $avatarManager, \OCP\Image $image, \OCP\IDBConnection $db) {
- if(!method_exists($ocConfig, 'setUserValue')
- || !method_exists($ocConfig, 'getUserValue')) {
- throw new \Exception('Invalid ownCloud User Config object');
- }
$this->ocConfig = $ocConfig;
$this->ocFilesystem = $ocFilesystem;
$this->ocLog = $ocLog;
$this->avatarManager = $avatarManager;
$this->image = $image;
+ $this->db = $db;
}
/**
@@ -152,7 +146,7 @@ class Manager {
return new OfflineUser(
$id,
$this->ocConfig,
- \OC::$server->getDatabaseConnection(),
+ $this->db,
$this->access->getUserMapper());
}