use OC\ServerNotAvailableException;
use OCP\Cache\CappedMemoryCache;
use OCP\GroupInterface;
-use OCP\Group\Backend\ABackend;
use OCP\Group\Backend\IDeleteGroupBackend;
use OCP\Group\Backend\IGetDisplayNameBackend;
use Psr\Log\LoggerInterface;
-class Group_LDAP extends ABackend implements GroupInterface, IGroupLDAP, IGetDisplayNameBackend, IDeleteGroupBackend {
+class Group_LDAP extends BackendUtility implements GroupInterface, IGroupLDAP, IGetDisplayNameBackend, IDeleteGroupBackend {
protected bool $enabled = false;
/** @var CappedMemoryCache<string[]> $cachedGroupMembers array of users with gid as key */
protected CappedMemoryCache $cachedNestedGroups;
protected GroupPluginManager $groupPluginManager;
protected LoggerInterface $logger;
- protected Access $access;
/**
* @var string $ldapGroupMemberAssocAttr contains the LDAP setting (in lower case) with the same name
protected string $ldapGroupMemberAssocAttr;
public function __construct(Access $access, GroupPluginManager $groupPluginManager) {
- $this->access = $access;
+ parent::__construct($access);
$filter = $this->access->connection->ldapGroupFilter;
$gAssoc = $this->access->connection->ldapGroupMemberAssocAttr;
if (!empty($filter) && !empty($gAssoc)) {
$this->access->connection->writeToCache($cacheKey, $displayName);
return $displayName;
}
-
- public function searchInGroup(string $gid, string $search = '', int $limit = -1, int $offset = 0): array {
- if (!$this->enabled) {
- return [];
- }
- return parent::searchInGroup($gid, $search, $limit, $offset);
- }
}
namespace OCP\Group\Backend;
use OCP\GroupInterface;
-use OCP\IUserManager;
-use OCP\Server;
-use OC\User\LazyUser;
/**
* @since 14.0.0
*/
-abstract class ABackend implements GroupInterface, ISearchableGroupBackend {
+abstract class ABackend implements GroupInterface {
/**
* @deprecated 14.0.0
* @since 14.0.0
return (bool)($actions & $implements);
}
-
- public function searchInGroup(string $gid, string $search = '', int $limit = -1, int $offset = 0): array {
- // Default implementation for compatibility reasons
- $userManager = Server::get(IUserManager::class);
- $users = [];
- foreach ($this->usersInGroup($gid, $search, $limit, $offset) as $userId) {
- $users[$userId] = new LazyUser($userId, $userManager);
- }
- return $users;
- }
}