Files
breadcrumb-the-shire/lib/Service/Directory/DirectoryScopeGateway.php
2026-03-04 15:56:58 +01:00

56 lines
1.5 KiB
PHP

<?php
namespace MintyPHP\Service\Directory;
use MintyPHP\Service\Tenant\TenantScopeService;
class DirectoryScopeGateway
{
public function __construct(
private readonly TenantScopeService $tenantScopeService
) {
}
public function hasGlobalAccess(int $userId): bool
{
return $this->tenantScopeService->hasGlobalAccess($userId);
}
public function getUserTenantIds(int $userId): array
{
return $this->tenantScopeService->getUserTenantIds($userId);
}
public function isStrict(): bool
{
return $this->tenantScopeService->isStrict();
}
public function canAccess(string $resourceType, int $resourceId, int $userId): bool
{
return $this->tenantScopeService->canAccess($resourceType, $resourceId, $userId);
}
public function resourceBelongsToTenant(string $resourceType, int $resourceId, int $tenantId): bool
{
return $this->tenantScopeService->resourceBelongsToTenant($resourceType, $resourceId, $tenantId);
}
public function filterTenantIdsForUser(array $tenantIds, int $userId): array
{
return $this->tenantScopeService->filterTenantIdsForUser($tenantIds, $userId);
}
public function mergeTenantIdsPreservingOutOfScope(
array $requestedTenantIds,
array $existingTenantIds,
array $allowedTenantIds
): array {
return $this->tenantScopeService->mergeTenantIdsPreservingOutOfScope(
$requestedTenantIds,
$existingTenantIds,
$allowedTenantIds
);
}
}