Skip to content

Commit 98732a3

Browse files
committed
update User related class
1 parent 6dbd456 commit 98732a3

4 files changed

Lines changed: 87 additions & 144 deletions

File tree

src/Issue/Reporter.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ class Reporter implements \JsonSerializable
1010

1111
public string $self;
1212

13-
public ?string $name;
13+
public ?string $name = null;
1414

1515
public string $emailAddress;
1616

@@ -30,6 +30,11 @@ class Reporter implements \JsonSerializable
3030

3131
public string $locale;
3232

33+
public string $expand;
34+
public array $applicationRoles;
35+
36+
public array $groups;
37+
3338
#[\ReturnTypeWillChange]
3439
public function jsonSerialize()
3540
{

src/User/User.php

Lines changed: 2 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -3,98 +3,14 @@
33
namespace JiraCloud\User;
44

55
use JiraCloud\ClassSerialize;
6+
use JiraCloud\Issue\Reporter;
67

78
/**
89
* Description of User.
910
*
1011
* @author Anik
1112
*/
12-
class User implements \JsonSerializable
13+
class User extends Reporter
1314
{
14-
use ClassSerialize;
1515

16-
/**
17-
* uri which was hit.
18-
*
19-
* @var string
20-
*/
21-
public $self;
22-
23-
/**
24-
* @var string
25-
*/
26-
public $key;
27-
28-
/**
29-
* @var string
30-
*/
31-
public $accountId;
32-
33-
/**
34-
* @var string
35-
*/
36-
public $name;
37-
38-
/**
39-
* @var string
40-
*/
41-
public $emailAddress;
42-
43-
/**
44-
* @var object
45-
*/
46-
public $avatarUrls;
47-
48-
/**
49-
* @var string
50-
*/
51-
public $displayName;
52-
53-
/**
54-
* @var bool
55-
*/
56-
public $active;
57-
58-
/**
59-
* @var string
60-
*/
61-
public $timeZone;
62-
63-
/**
64-
* @var array "#/definitions/simple-list-wrapper"
65-
*/
66-
public $groups;
67-
68-
/**
69-
* @var array "#/definitions/simple-list-wrapper"
70-
*/
71-
public $applicationRoles;
72-
73-
/**
74-
* @var string
75-
*/
76-
public $expand;
77-
78-
/**
79-
* @var string Used only for creating a new user
80-
*/
81-
public $password;
82-
83-
#[\ReturnTypeWillChange]
84-
public function jsonSerialize()
85-
{
86-
return array_filter(get_object_vars($this));
87-
}
88-
89-
/**
90-
* User constructor.
91-
*
92-
* @param array $array user info array.
93-
*/
94-
public function __construct($array = [])
95-
{
96-
foreach ($array as $key=>$value) {
97-
$this->{$key} = $value;
98-
}
99-
}
10016
}

src/User/UserService.php

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,14 @@ class UserService extends \JiraCloud\JiraClient
1616
/**
1717
* Function to create a new user.
1818
*
19-
* @param User|array $user
20-
*
21-
* @throws \JiraCloud\JiraException
22-
* @throws \JsonMapper_Exception
19+
* @param array|User $user
2320
*
2421
* @return User User class
22+
*@throws \JsonMapper_Exception
23+
*
24+
* @throws \JiraCloud\JiraException
2525
*/
26-
public function create($user)
26+
public function create(User|array $user): User
2727
{
2828
$data = json_encode($user);
2929

@@ -40,15 +40,15 @@ public function create($user)
4040
/**
4141
* Function to get user.
4242
*
43-
* @param array $paramArray Possible values for $paramArray 'username', 'key'.
43+
* @param array $paramArray Possible values for $paramArray 'accountId', 'key'.
4444
* "Either the 'username' or the 'key' query parameters need to be provided".
4545
*
46-
* @throws \JiraCloud\JiraException
47-
* @throws \JsonMapper_Exception
48-
*
4946
* @return User User class
47+
*@throws \JsonMapper_Exception
48+
*
49+
* @throws \JiraCloud\JiraException
5050
*/
51-
public function get($paramArray)
51+
public function get(array $paramArray): User
5252
{
5353
$queryParam = '?'.http_build_query($paramArray);
5454

@@ -67,12 +67,12 @@ public function get($paramArray)
6767
*
6868
* @param array $paramArray
6969
*
70-
* @throws \JiraCloud\JiraException
71-
* @throws \JsonMapper_Exception
72-
*
7370
* @return User[]
71+
*@throws \JsonMapper_Exception
72+
*
73+
* @throws \JiraCloud\JiraException
7474
*/
75-
public function findUsers($paramArray)
75+
public function findUsers(array $paramArray): array
7676
{
7777
$queryParam = '?'.http_build_query($paramArray);
7878

@@ -99,14 +99,14 @@ public function findUsers($paramArray)
9999
*
100100
* @param array $paramArray
101101
*
102-
* @throws \JiraCloud\JiraException
103-
* @throws \JsonMapper_Exception
104-
*
105102
* @return User[]
106103
*
104+
* @throws \JsonMapper_Exception
105+
*
106+
* @throws \JiraCloud\JiraException
107107
* @see https://docs.atlassian.com/jira/REST/cloud/#api/2/user-findAssignableUsers
108108
*/
109-
public function findAssignableUsers($paramArray)
109+
public function findAssignableUsers(array $paramArray): array
110110
{
111111
$queryParam = '?'.http_build_query($paramArray);
112112

@@ -132,14 +132,14 @@ public function findAssignableUsers($paramArray)
132132
*
133133
* @param array $paramArray
134134
*
135-
* @throws \JiraCloud\JiraException
136-
* @throws \JsonMapper_Exception
137-
*
138135
* @return User[]
139136
*
137+
* @throws \JsonMapper_Exception
138+
*
139+
* @throws \JiraCloud\JiraException
140140
* @see https://developer.atlassian.com/cloud/jira/platform/rest/v2/#api-rest-api-2-user-search-query-get
141141
*/
142-
public function findUsersByQuery($paramArray)
142+
public function findUsersByQuery(array $paramArray): array
143143
{
144144
$queryParam = '?'.http_build_query($paramArray);
145145

@@ -169,7 +169,7 @@ public function findUsersByQuery($paramArray)
169169
*
170170
* @return string
171171
*/
172-
public function deleteUser(array $paramArray)
172+
public function deleteUser(array $paramArray): string
173173
{
174174
$queryParam = '?'.http_build_query($paramArray);
175175

@@ -200,12 +200,12 @@ public function getMyself()
200200
/**
201201
* @param array $paramArray
202202
*
203-
* @throws \JiraCloud\JiraException
204-
* @throws \JsonMapper_Exception
205-
*
206203
* @return User[]
204+
*@throws \JsonMapper_Exception
205+
*
206+
* @throws \JiraCloud\JiraException
207207
*/
208-
public function getUsers($paramArray)
208+
public function getUsers(array $paramArray): array
209209
{
210210
$queryParam = '?'.http_build_query($paramArray);
211211

@@ -226,15 +226,15 @@ public function getUsers($paramArray)
226226
/**
227227
* Function to update an existing user.
228228
*
229-
* @param array $paramArray
230-
* @param User|array $user
231-
*
232-
* @throws \JiraCloud\JiraException
233-
* @throws \JsonMapper_Exception
229+
* @param array $paramArray
230+
* @param array|User $user
234231
*
235232
* @return User User class
233+
*@throws \JsonMapper_Exception
234+
*
235+
* @throws \JiraCloud\JiraException
236236
*/
237-
public function update($paramArray, $user)
237+
public function update(array $paramArray, User|array $user): User
238238
{
239239
$queryParam = '?'.http_build_query($paramArray);
240240

0 commit comments

Comments
 (0)