Skip to content

Commit dc197a0

Browse files
authored
fix: Don't use creation dynamic properties (#279)
* Don't use creation dynamic properties * fix style ci * fix style ci space * fix style ci line break
1 parent 39a7e2e commit dc197a0

File tree

2 files changed

+20
-10
lines changed

2 files changed

+20
-10
lines changed

src/Client/Response.php

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,21 +11,22 @@
1111
use Illuminate\Support\Traits\Macroable;
1212
use LogicException;
1313
use Phpro\SoapClient\Type\ResultInterface;
14-
use function Psl\Type\string;
1514
use Psr\Http\Message\ResponseInterface;
1615
use VeeWee\Xml\Dom\Document;
1716

17+
use function Psl\Type\string;
18+
1819
/**
1920
* Class Response.
20-
*
21-
* @property ?TransferStats $transferStats
22-
* @property array $cookies
2321
*/
2422
class Response implements ResultInterface, ArrayAccess
2523
{
2624
use Macroable {
2725
__call as macroCall;
2826
}
27+
protected ?TransferStats $transferStats = null;
28+
29+
protected array $cookies = [];
2930

3031
/**
3132
* The underlying PSR response.
@@ -47,6 +48,16 @@ public function __construct(ResponseInterface $response)
4748
$this->response = $response;
4849
}
4950

51+
public function setCookies(array $cookies): void
52+
{
53+
$this->cookies = $cookies;
54+
}
55+
56+
public function setTransferStats(?TransferStats $transferStats): void
57+
{
58+
$this->transferStats = $transferStats;
59+
}
60+
5061
public static function fromSoapResponse(mixed $result, int $status = 200): Response
5162
{
5263
return new self(new Psr7Response($status, [], json_encode($result)));

src/SoapClient.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -483,7 +483,7 @@ public function runBeforeSendingCallbacks(RequestInterface $request, array $opti
483483
{
484484
return tap($request, function ($request) use ($options) {
485485
$this->beforeSendingCallbacks->each->__invoke(
486-
(new Request($request)),
486+
new Request($request),
487487
$options,
488488
$this
489489
);
@@ -498,9 +498,8 @@ public function runBeforeSendingCallbacks(RequestInterface $request, array $opti
498498
*/
499499
protected function populateResponse(Response $response)
500500
{
501-
$response->cookies = $this->cookies;
502-
503-
$response->transferStats = $this->transferStats;
501+
$response->setCookies($this->cookies);
502+
$response->setTransferStats($this->transferStats);
504503

505504
return $response;
506505
}
@@ -553,7 +552,7 @@ public function buildRecorderHandler()
553552

554553
return $promise->then(function ($response) use ($request) {
555554
optional($this->factory)->recordRequestResponsePair(
556-
(new Request($request)),
555+
new Request($request),
557556
new Response($response)
558557
);
559558

@@ -574,7 +573,7 @@ public function buildStubHandler()
574573
return function ($request, $options) use ($handler) {
575574
$response = ($this->stubCallbacks ?? collect())
576575
->map
577-
->__invoke((new Request($request)), $options)
576+
->__invoke(new Request($request), $options)
578577
->filter()
579578
->first();
580579
if (is_null($response)) {

0 commit comments

Comments
 (0)