Skip to content

Commit 9ad1b6c

Browse files
committed
Replace all calls of AbstractApi::put() with HttpClient
1 parent e975190 commit 9ad1b6c

File tree

9 files changed

+71
-29
lines changed

9 files changed

+71
-29
lines changed

src/Redmine/Api/Group.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -155,10 +155,13 @@ public function update(int $id, array $params = [])
155155
];
156156
$params = $this->sanitizeParams($defaults, $params);
157157

158-
return $this->put(
158+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
159+
'PUT',
159160
'/groups/' . $id . '.xml',
160161
XmlSerializer::createFromArray(['group' => $params])->getEncoded()
161-
);
162+
));
163+
164+
return $this->lastResponse->getContent();
162165
}
163166

164167
/**

src/Redmine/Api/Issue.php

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -260,10 +260,13 @@ public function update($id, array $params)
260260
$sanitizedParams['assigned_to_id'] = '';
261261
}
262262

263-
return $this->put(
263+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
264+
'PUT',
264265
'/issues/' . urlencode(strval($id)) . '.xml',
265266
XmlSerializer::createFromArray(['issue' => $sanitizedParams])->getEncoded()
266-
);
267+
));
268+
269+
return $this->lastResponse->getContent();
267270
}
268271

269272
/**
@@ -417,10 +420,13 @@ public function attachMany($id, array $attachments)
417420
'uploads' => $attachments,
418421
];
419422

420-
return $this->put(
423+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeJsonRequest(
424+
'PUT',
421425
'/issues/' . urlencode(strval($id)) . '.json',
422426
JsonSerializer::createFromArray(['issue' => $params])->getEncoded()
423-
);
427+
));
428+
429+
return $this->lastResponse->getContent();
424430
}
425431

426432
/**

src/Redmine/Api/IssueCategory.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -211,10 +211,13 @@ public function update($id, array $params)
211211
];
212212
$params = $this->sanitizeParams($defaults, $params);
213213

214-
return $this->put(
214+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
215+
'PUT',
215216
'/issue_categories/' . urlencode(strval($id)) . '.xml',
216217
XmlSerializer::createFromArray(['issue_category' => $params])->getEncoded()
217-
);
218+
));
219+
220+
return $this->lastResponse->getContent();
218221
}
219222

220223
/**

src/Redmine/Api/Membership.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -147,10 +147,13 @@ public function update($id, array $params = [])
147147
throw new MissingParameterException('Theses parameters are mandatory: `role_ids`');
148148
}
149149

150-
return $this->put(
150+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
151+
'PUT',
151152
'/memberships/' . $id . '.xml',
152153
XmlSerializer::createFromArray(['membership' => $params])->getEncoded()
153-
);
154+
));
155+
156+
return $this->lastResponse->getContent();
154157
}
155158

156159
/**

src/Redmine/Api/Project.php

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -215,10 +215,13 @@ public function update($id, array $params)
215215
];
216216
$params = $this->sanitizeParams($defaults, $params);
217217

218-
return $this->put(
218+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
219+
'PUT',
219220
'/projects/' . urlencode(strval($id)) . '.xml',
220221
XmlSerializer::createFromArray(['project' => $params])->getEncoded()
221-
);
222+
));
223+
224+
return $this->lastResponse->getContent();
222225
}
223226

224227
/**
@@ -242,10 +245,11 @@ final public function close($projectIdentifier): bool
242245
));
243246
}
244247

245-
$this->put(
248+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
249+
'PUT',
246250
'/projects/' . strval($projectIdentifier) . '/close.xml',
247251
''
248-
);
252+
));
249253

250254
$lastResponse = $this->getLastResponse();
251255

@@ -277,10 +281,11 @@ final public function reopen($projectIdentifier): bool
277281
));
278282
}
279283

280-
$this->put(
284+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
285+
'PUT',
281286
'/projects/' . strval($projectIdentifier) . '/reopen.xml',
282287
''
283-
);
288+
));
284289

285290
$lastResponse = $this->getLastResponse();
286291

@@ -312,10 +317,11 @@ final public function archive($projectIdentifier): bool
312317
));
313318
}
314319

315-
$this->put(
320+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
321+
'PUT',
316322
'/projects/' . strval($projectIdentifier) . '/archive.xml',
317323
''
318-
);
324+
));
319325

320326
$lastResponse = $this->getLastResponse();
321327

@@ -347,10 +353,11 @@ final public function unarchive($projectIdentifier): bool
347353
));
348354
}
349355

350-
$this->put(
356+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
357+
'PUT',
351358
'/projects/' . strval($projectIdentifier) . '/unarchive.xml',
352359
''
353-
);
360+
));
354361

355362
$lastResponse = $this->getLastResponse();
356363

src/Redmine/Api/TimeEntry.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -171,10 +171,13 @@ public function update($id, array $params)
171171
];
172172
$params = $this->sanitizeParams($defaults, $params);
173173

174-
return $this->put(
174+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
175+
'PUT',
175176
'/time_entries/' . $id . '.xml',
176177
XmlSerializer::createFromArray(['time_entry' => $params])->getEncoded()
177-
);
178+
));
179+
180+
return $this->lastResponse->getContent();
178181
}
179182

180183
/**

src/Redmine/Api/User.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -247,10 +247,13 @@ public function update($id, array $params)
247247
];
248248
$params = $this->sanitizeParams($defaults, $params);
249249

250-
return $this->put(
250+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
251+
'PUT',
251252
'/users/' . urlencode(strval($id)) . '.xml',
252253
XmlSerializer::createFromArray(['user' => $params])->getEncoded()
253-
);
254+
));
255+
256+
return $this->lastResponse->getContent();
254257
}
255258

256259
/**

src/Redmine/Api/Version.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -224,10 +224,13 @@ public function update($id, array $params)
224224
$this->validateStatus($params);
225225
$this->validateSharing($params);
226226

227-
return $this->put(
227+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
228+
'PUT',
228229
'/versions/' . $id . '.xml',
229230
XmlSerializer::createFromArray(['version' => $params])->getEncoded()
230-
);
231+
));
232+
233+
return $this->lastResponse->getContent();
231234
}
232235

233236
private function validateStatus(array $params = [])

src/Redmine/Api/Wiki.php

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -145,10 +145,19 @@ public function create($project, $page, array $params = [])
145145
];
146146
$params = $this->sanitizeParams($defaults, $params);
147147

148-
return $this->put(
148+
$this->lastResponse = $this->getHttpClient()->request(HttpFactory::makeXmlRequest(
149+
'PUT',
149150
'/projects/' . $project . '/wiki/' . urlencode($page) . '.xml',
150151
XmlSerializer::createFromArray(['wiki_page' => $params])->getEncoded()
151-
);
152+
));
153+
154+
$body = $this->lastResponse->getContent();
155+
156+
if ($body !== '') {
157+
return new SimpleXMLElement($body);
158+
}
159+
160+
return $body;
152161
}
153162

154163
/**
@@ -162,7 +171,9 @@ public function create($project, $page, array $params = [])
162171
*/
163172
public function update($project, $page, array $params = [])
164173
{
165-
return $this->create($project, $page, $params);
174+
$this->create($project, $page, $params);
175+
176+
return $this->lastResponse->getContent();
166177
}
167178

168179
/**

0 commit comments

Comments
 (0)