Completed
Push — EZP-29821 ( cc2f22 )
by André
22:55
created

UserService::isUserGroup()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
c 0
b 0
f 0
cc 1
nc 1
nop 1
rs 10
1
<?php
2
3
/**
4
 * UserService class.
5
 *
6
 * @copyright Copyright (C) eZ Systems AS. All rights reserved.
7
 * @license For full copyright and license information view LICENSE file distributed with this source code.
8
 */
9
namespace eZ\Publish\Core\Repository\SiteAccessAware;
10
11
use eZ\Publish\API\Repository\UserService as UserServiceInterface;
12
use eZ\Publish\API\Repository\Values\Content\Content;
13
use eZ\Publish\API\Repository\Values\User\UserGroupCreateStruct;
14
use eZ\Publish\API\Repository\Values\User\UserGroupUpdateStruct;
15
use eZ\Publish\API\Repository\Values\User\UserCreateStruct;
16
use eZ\Publish\API\Repository\Values\User\UserGroup;
17
use eZ\Publish\API\Repository\Values\User\User;
18
use eZ\Publish\API\Repository\Values\User\UserTokenUpdateStruct;
19
use eZ\Publish\API\Repository\Values\User\UserUpdateStruct;
20
use eZ\Publish\Core\Repository\SiteAccessAware\Language\LanguageResolver;
21
22
/**
23
 * UserService for SiteAccessAware layer.
24
 *
25
 * Currently does nothing but hand over calls to aggregated service.
26
 */
27
class UserService implements UserServiceInterface
28
{
29
    /** @var \eZ\Publish\API\Repository\UserService */
30
    protected $service;
31
32
    /** @var \eZ\Publish\Core\Repository\SiteAccessAware\Language\LanguageResolver */
33
    protected $languageResolver;
34
35
    /**
36
     * Construct service object from aggregated service.
37
     *
38
     * @param \eZ\Publish\API\Repository\UserService $service
39
     * @param \eZ\Publish\Core\Repository\SiteAccessAware\Language\LanguageResolver $languageResolver
40
     */
41
    public function __construct(
42
        UserServiceInterface $service,
43
        LanguageResolver $languageResolver
44
    ) {
45
        $this->service = $service;
46
        $this->languageResolver = $languageResolver;
47
    }
48
49
    public function createUserGroup(UserGroupCreateStruct $userGroupCreateStruct, UserGroup $parentGroup)
50
    {
51
        return $this->service->createUserGroup($userGroupCreateStruct, $parentGroup);
52
    }
53
54
    public function loadUserGroup($id, array $prioritizedLanguages = null)
55
    {
56
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
57
58
        return $this->service->loadUserGroup($id, $prioritizedLanguages);
59
    }
60
61
    public function loadSubUserGroups(UserGroup $userGroup, $offset = 0, $limit = 25, array $prioritizedLanguages = null)
62
    {
63
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
64
65
        return $this->service->loadSubUserGroups($userGroup, $offset, $limit, $prioritizedLanguages);
66
    }
67
68
    public function deleteUserGroup(UserGroup $userGroup)
69
    {
70
        return $this->service->deleteUserGroup($userGroup);
71
    }
72
73
    public function moveUserGroup(UserGroup $userGroup, UserGroup $newParent)
74
    {
75
        return $this->service->moveUserGroup($userGroup, $newParent);
76
    }
77
78
    public function updateUserGroup(UserGroup $userGroup, UserGroupUpdateStruct $userGroupUpdateStruct)
79
    {
80
        return $this->service->updateUserGroup($userGroup, $userGroupUpdateStruct);
81
    }
82
83
    public function createUser(UserCreateStruct $userCreateStruct, array $parentGroups)
84
    {
85
        return $this->service->createUser($userCreateStruct, $parentGroups);
86
    }
87
88
    public function loadUser($userId, array $prioritizedLanguages = null)
89
    {
90
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
91
92
        return $this->service->loadUser($userId, $prioritizedLanguages);
93
    }
94
95
    public function loadAnonymousUser()
96
    {
97
        return $this->service->loadAnonymousUser();
0 ignored issues
show
Deprecated Code introduced by
The method eZ\Publish\API\Repositor...ce::loadAnonymousUser() has been deprecated with message: since 5.3, use loadUser( $anonymousUserId ) instead

This method has been deprecated. The supplier of the class has supplied an explanatory message.

The explanatory message should give you some clue as to whether and when the method will be removed from the class and what other method or class to use instead.

Loading history...
98
    }
99
100
    public function loadUserByCredentials($login, $password, array $prioritizedLanguages = null)
101
    {
102
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
103
104
        return $this->service->loadUserByCredentials($login, $password, $prioritizedLanguages);
105
    }
106
107
    public function loadUserByLogin($login, array $prioritizedLanguages = null)
108
    {
109
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
110
111
        return $this->service->loadUserByLogin($login, $prioritizedLanguages);
112
    }
113
114
    public function loadUsersByEmail($email, array $prioritizedLanguages = null)
115
    {
116
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
117
118
        return $this->service->loadUsersByEmail($email, $prioritizedLanguages);
119
    }
120
121
    public function deleteUser(User $user)
122
    {
123
        return $this->service->deleteUser($user);
124
    }
125
126
    public function updateUser(User $user, UserUpdateStruct $userUpdateStruct)
127
    {
128
        return $this->service->updateUser($user, $userUpdateStruct);
129
    }
130
131
    public function assignUserToUserGroup(User $user, UserGroup $userGroup)
132
    {
133
        return $this->service->assignUserToUserGroup($user, $userGroup);
134
    }
135
136
    public function unAssignUserFromUserGroup(User $user, UserGroup $userGroup)
137
    {
138
        return $this->service->unAssignUserFromUserGroup($user, $userGroup);
139
    }
140
141
    public function loadUserGroupsOfUser(User $user, $offset = 0, $limit = 25, array $prioritizedLanguages = null)
142
    {
143
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
144
145
        return $this->service->loadUserGroupsOfUser($user, $offset, $limit, $prioritizedLanguages);
146
    }
147
148
    public function loadUsersOfUserGroup(UserGroup $userGroup, $offset = 0, $limit = 25, array $prioritizedLanguages = null)
149
    {
150
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
151
152
        return $this->service->loadUsersOfUserGroup($userGroup, $offset, $limit, $prioritizedLanguages);
153
    }
154
155
    public function loadUserByToken($hash, array $prioritizedLanguages = null)
156
    {
157
        return $this->service->loadUserByToken(
158
            $hash,
159
            $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages)
160
        );
161
    }
162
163
    public function updateUserToken(User $user, UserTokenUpdateStruct $userTokenUpdateStruct)
164
    {
165
        return $this->service->updateUserToken($user, $userTokenUpdateStruct);
166
    }
167
168
    public function expireUserToken($hash)
169
    {
170
        return $this->service->expireUserToken($hash);
171
    }
172
173
    public function isUser(Content $content) : bool
174
    {
175
        return $this->service->isUser($content);
176
    }
177
178
    public function isUserGroup(Content $content) : bool
179
    {
180
        return $this->service->isUserGroup($content);
181
    }
182
183
    public function newUserCreateStruct($login, $email, $password, $mainLanguageCode, $contentType = null)
184
    {
185
        return $this->service->newUserCreateStruct($login, $email, $password, $mainLanguageCode, $contentType);
186
    }
187
188
    public function newUserGroupCreateStruct($mainLanguageCode, $contentType = null)
189
    {
190
        return $this->service->newUserGroupCreateStruct($mainLanguageCode, $contentType);
191
    }
192
193
    public function newUserUpdateStruct()
194
    {
195
        return $this->service->newUserUpdateStruct();
196
    }
197
198
    public function newUserGroupUpdateStruct()
199
    {
200
        return $this->service->newUserGroupUpdateStruct();
201
    }
202
}
203