Completed
Push — master ( 8fa866...f2aec6 )
by André
44:30 queued 23:23
created

UserService::updateUserToken()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
nc 1
nop 2
dl 0
loc 4
rs 10
c 0
b 0
f 0
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\PasswordValidationContext;
14
use eZ\Publish\API\Repository\Values\User\UserGroupCreateStruct;
15
use eZ\Publish\API\Repository\Values\User\UserGroupUpdateStruct;
16
use eZ\Publish\API\Repository\Values\User\UserCreateStruct;
17
use eZ\Publish\API\Repository\Values\User\UserGroup;
18
use eZ\Publish\API\Repository\Values\User\User;
19
use eZ\Publish\API\Repository\Values\User\UserTokenUpdateStruct;
20
use eZ\Publish\API\Repository\Values\User\UserUpdateStruct;
21
use eZ\Publish\Core\Repository\SiteAccessAware\Language\LanguageResolver;
22
23
/**
24
 * UserService for SiteAccessAware layer.
25
 *
26
 * Currently does nothing but hand over calls to aggregated service.
27
 */
28
class UserService implements UserServiceInterface
29
{
30
    /** @var \eZ\Publish\API\Repository\UserService */
31
    protected $service;
32
33
    /** @var \eZ\Publish\Core\Repository\SiteAccessAware\Language\LanguageResolver */
34
    protected $languageResolver;
35
36
    /**
37
     * Construct service object from aggregated service.
38
     *
39
     * @param \eZ\Publish\API\Repository\UserService $service
40
     * @param \eZ\Publish\Core\Repository\SiteAccessAware\Language\LanguageResolver $languageResolver
41
     */
42
    public function __construct(
43
        UserServiceInterface $service,
44
        LanguageResolver $languageResolver
45
    ) {
46
        $this->service = $service;
47
        $this->languageResolver = $languageResolver;
48
    }
49
50
    public function createUserGroup(UserGroupCreateStruct $userGroupCreateStruct, UserGroup $parentGroup)
51
    {
52
        return $this->service->createUserGroup($userGroupCreateStruct, $parentGroup);
53
    }
54
55
    public function loadUserGroup($id, array $prioritizedLanguages = null)
56
    {
57
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
58
59
        return $this->service->loadUserGroup($id, $prioritizedLanguages);
60
    }
61
62
    public function loadSubUserGroups(UserGroup $userGroup, $offset = 0, $limit = 25, array $prioritizedLanguages = null)
63
    {
64
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
65
66
        return $this->service->loadSubUserGroups($userGroup, $offset, $limit, $prioritizedLanguages);
67
    }
68
69
    public function deleteUserGroup(UserGroup $userGroup)
70
    {
71
        return $this->service->deleteUserGroup($userGroup);
72
    }
73
74
    public function moveUserGroup(UserGroup $userGroup, UserGroup $newParent)
75
    {
76
        return $this->service->moveUserGroup($userGroup, $newParent);
77
    }
78
79
    public function updateUserGroup(UserGroup $userGroup, UserGroupUpdateStruct $userGroupUpdateStruct)
80
    {
81
        return $this->service->updateUserGroup($userGroup, $userGroupUpdateStruct);
82
    }
83
84
    public function createUser(UserCreateStruct $userCreateStruct, array $parentGroups)
85
    {
86
        return $this->service->createUser($userCreateStruct, $parentGroups);
87
    }
88
89
    public function loadUser($userId, array $prioritizedLanguages = null)
90
    {
91
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
92
93
        return $this->service->loadUser($userId, $prioritizedLanguages);
94
    }
95
96
    public function loadAnonymousUser()
97
    {
98
        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...
99
    }
100
101
    public function loadUserByCredentials($login, $password, array $prioritizedLanguages = null)
102
    {
103
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
104
105
        return $this->service->loadUserByCredentials($login, $password, $prioritizedLanguages);
106
    }
107
108
    public function loadUserByLogin($login, array $prioritizedLanguages = null)
109
    {
110
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
111
112
        return $this->service->loadUserByLogin($login, $prioritizedLanguages);
113
    }
114
115
    public function loadUsersByEmail($email, array $prioritizedLanguages = null)
116
    {
117
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
118
119
        return $this->service->loadUsersByEmail($email, $prioritizedLanguages);
120
    }
121
122
    public function deleteUser(User $user)
123
    {
124
        return $this->service->deleteUser($user);
125
    }
126
127
    public function updateUser(User $user, UserUpdateStruct $userUpdateStruct)
128
    {
129
        return $this->service->updateUser($user, $userUpdateStruct);
130
    }
131
132
    public function assignUserToUserGroup(User $user, UserGroup $userGroup)
133
    {
134
        return $this->service->assignUserToUserGroup($user, $userGroup);
135
    }
136
137
    public function unAssignUserFromUserGroup(User $user, UserGroup $userGroup)
138
    {
139
        return $this->service->unAssignUserFromUserGroup($user, $userGroup);
140
    }
141
142
    public function loadUserGroupsOfUser(User $user, $offset = 0, $limit = 25, array $prioritizedLanguages = null)
143
    {
144
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
145
146
        return $this->service->loadUserGroupsOfUser($user, $offset, $limit, $prioritizedLanguages);
147
    }
148
149
    public function loadUsersOfUserGroup(UserGroup $userGroup, $offset = 0, $limit = 25, array $prioritizedLanguages = null)
150
    {
151
        $prioritizedLanguages = $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages);
152
153
        return $this->service->loadUsersOfUserGroup($userGroup, $offset, $limit, $prioritizedLanguages);
154
    }
155
156
    public function loadUserByToken($hash, array $prioritizedLanguages = null)
157
    {
158
        return $this->service->loadUserByToken(
159
            $hash,
160
            $this->languageResolver->getPrioritizedLanguages($prioritizedLanguages)
161
        );
162
    }
163
164
    public function updateUserToken(User $user, UserTokenUpdateStruct $userTokenUpdateStruct)
165
    {
166
        return $this->service->updateUserToken($user, $userTokenUpdateStruct);
167
    }
168
169
    public function expireUserToken($hash)
170
    {
171
        return $this->service->expireUserToken($hash);
172
    }
173
174
    public function isUser(Content $content): bool
175
    {
176
        return $this->service->isUser($content);
177
    }
178
179
    public function isUserGroup(Content $content): bool
180
    {
181
        return $this->service->isUserGroup($content);
182
    }
183
184
    public function newUserCreateStruct($login, $email, $password, $mainLanguageCode, $contentType = null)
185
    {
186
        return $this->service->newUserCreateStruct($login, $email, $password, $mainLanguageCode, $contentType);
187
    }
188
189
    public function newUserGroupCreateStruct($mainLanguageCode, $contentType = null)
190
    {
191
        return $this->service->newUserGroupCreateStruct($mainLanguageCode, $contentType);
192
    }
193
194
    public function newUserUpdateStruct()
195
    {
196
        return $this->service->newUserUpdateStruct();
197
    }
198
199
    public function newUserGroupUpdateStruct()
200
    {
201
        return $this->service->newUserGroupUpdateStruct();
202
    }
203
204
    public function validatePassword(string $password, PasswordValidationContext $context = null): array
205
    {
206
        return $this->service->validatePassword($password, $context);
207
    }
208
}
209