Code Duplication    Length = 21-21 lines in 2 locations

eZ/Publish/Core/Repository/PermissionsCriterionHandler.php 1 location

@@ 31-51 (lines=21) @@
28
     *
29
     * @return bool|\eZ\Publish\API\Repository\Values\Content\Query\Criterion
30
     */
31
    public function addPermissionsCriterion(Criterion &$criterion)
32
    {
33
        $permissionCriterion = $this->getPermissionsCriterion();
34
        if ($permissionCriterion === true || $permissionCriterion === false) {
35
            return $permissionCriterion;
36
        }
37
38
        // Merge with original $criterion
39
        if ($criterion instanceof LogicalAnd) {
40
            $criterion->criteria[] = $permissionCriterion;
41
        } else {
42
            $criterion = new LogicalAnd(
43
                [
44
                    $criterion,
45
                    $permissionCriterion,
46
                ]
47
            );
48
        }
49
50
        return true;
51
    }
52
}
53

eZ/Publish/Core/Repository/SearchService.php 1 location

@@ 328-348 (lines=21) @@
325
     *
326
     * @return bool|\eZ\Publish\API\Repository\Values\Content\Query\Criterion
327
     */
328
    protected function addPermissionsCriterion(Criterion &$criterion)
329
    {
330
        $permissionCriterion = $this->permissionCriterionResolver->getPermissionsCriterion('content', 'read');
331
        if ($permissionCriterion === true || $permissionCriterion === false) {
332
            return $permissionCriterion;
333
        }
334
335
        // Merge with original $criterion
336
        if ($criterion instanceof LogicalAnd) {
337
            $criterion->criteria[] = $permissionCriterion;
338
        } else {
339
            $criterion = new LogicalAnd(
340
                [
341
                    $criterion,
342
                    $permissionCriterion,
343
                ]
344
            );
345
        }
346
347
        return true;
348
    }
349
350
    public function supports(int $capabilityFlag): bool
351
    {