Browse Source

Let OC\Group\Group handle the fallback and remove default implementation from ABackend

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
tags/v27.0.0beta1
Côme Chilliet 1 year ago
parent
commit
6385a5af36
No account linked to committer's email address

+ 2
- 11
apps/user_ldap/lib/Group_LDAP.php View File

@@ -48,12 +48,11 @@ use Exception;
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 */
@@ -64,7 +63,6 @@ class Group_LDAP extends ABackend implements GroupInterface, IGroupLDAP, IGetDis
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
@@ -72,7 +70,7 @@ class Group_LDAP extends ABackend implements GroupInterface, IGroupLDAP, IGetDis
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)) {
@@ -1333,11 +1331,4 @@ class Group_LDAP extends ABackend implements GroupInterface, IGroupLDAP, IGetDis
$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);
}
}

+ 0
- 5
build/psalm-baseline-ocp.xml View File

@@ -5,11 +5,6 @@
<code>OC</code>
</UndefinedClass>
</file>
<file src="lib/public/Group/Backend/ABackend.php">
<UndefinedClass occurrences="2">
<code>OC</code>
</UndefinedClass>
</file>
<file src="lib/public/AppFramework/ApiController.php">
<NoInterfaceProperties occurrences="1">
<code>$this-&gt;request-&gt;server</code>

+ 1
- 14
lib/public/Group/Backend/ABackend.php View File

@@ -26,14 +26,11 @@ declare(strict_types=1);
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
@@ -68,14 +65,4 @@ abstract class ABackend implements GroupInterface, ISearchableGroupBackend {

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;
}
}

Loading…
Cancel
Save