Completed
Push — master ( 4e0ac6...0fdc9b )
by Łukasz
25:36
created

UserService::loadUsersOfUserGroup()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

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