PluginProbe
AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI / 6.0.4
AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI v6.0.4
6.0.4 6.0.3 6.0.2 6.0.1 6.0.0 5.8.6 5.8.5 5.8.4 5.8.3 5.8.2 5.8.1 5.8.0 5.7.9.2 5.7.9.1 5.7.8 5.7.9 5.7.6 5.7.7 5.7.5 5.7.4 5.7.3 5.7.2 5.7.1 trunk 5.6.0 All 35 releases
← All changes | integrations/mailchimp/vendor/guzzlehttp/guzzle/src/TransferStats.php +133 -0 5.7.7 → 6.0.4 View file →
@@ -1,0 +1,133 @@
1 +<?php
2 +
3 +namespace GuzzleHttp;
4 +
5 +use Psr\Http\Message\RequestInterface;
6 +use Psr\Http\Message\ResponseInterface;
7 +use Psr\Http\Message\UriInterface;
8 +
9 +/**
10 + * Represents data at the point after it was transferred either successfully
11 + * or after a network error.
12 + */
13 +final class TransferStats
14 +{
15 + /**
16 + * @var RequestInterface
17 + */
18 + private $request;
19 +
20 + /**
21 + * @var ResponseInterface|null
22 + */
23 + private $response;
24 +
25 + /**
26 + * @var float|null
27 + */
28 + private $transferTime;
29 +
30 + /**
31 + * @var array
32 + */
33 + private $handlerStats;
34 +
35 + /**
36 + * @var mixed|null
37 + */
38 + private $handlerErrorData;
39 +
40 + /**
41 + * @param RequestInterface $request Request that was sent.
42 + * @param ResponseInterface|null $response Response received (if any)
43 + * @param float|null $transferTime Total handler transfer time.
44 + * @param mixed $handlerErrorData Handler error data.
45 + * @param array $handlerStats Handler specific stats.
46 + */
47 + public function __construct(
48 + RequestInterface $request,
49 + ?ResponseInterface $response = null,
50 + ?float $transferTime = null,
51 + $handlerErrorData = null,
52 + array $handlerStats = []
53 + ) {
54 + $this->request = $request;
55 + $this->response = $response;
56 + $this->transferTime = $transferTime;
57 + $this->handlerErrorData = $handlerErrorData;
58 + $this->handlerStats = $handlerStats;
59 + }
60 +
61 + public function getRequest(): RequestInterface
62 + {
63 + return $this->request;
64 + }
65 +
66 + /**
67 + * Returns the response that was received (if any).
68 + */
69 + public function getResponse(): ?ResponseInterface
70 + {
71 + return $this->response;
72 + }
73 +
74 + /**
75 + * Returns true if a response was received.
76 + */
77 + public function hasResponse(): bool
78 + {
79 + return $this->response !== null;
80 + }
81 +
82 + /**
83 + * Gets handler specific error data.
84 + *
85 + * This might be an exception, a integer representing an error code, or
86 + * anything else. Relying on this value assumes that you know what handler
87 + * you are using.
88 + *
89 + * @return mixed
90 + */
91 + public function getHandlerErrorData()
92 + {
93 + return $this->handlerErrorData;
94 + }
95 +
96 + /**
97 + * Get the effective URI the request was sent to.
98 + */
99 + public function getEffectiveUri(): UriInterface
100 + {
101 + return $this->request->getUri();
102 + }
103 +
104 + /**
105 + * Get the estimated time the request was being transferred by the handler.
106 + *
107 + * @return float|null Time in seconds.
108 + */
109 + public function getTransferTime(): ?float
110 + {
111 + return $this->transferTime;
112 + }
113 +
114 + /**
115 + * Gets an array of all of the handler specific transfer data.
116 + */
117 + public function getHandlerStats(): array
118 + {
119 + return $this->handlerStats;
120 + }
121 +
122 + /**
123 + * Get a specific handler statistic from the handler by name.
124 + *
125 + * @param string $stat Handler specific transfer stat to retrieve.
126 + *
127 + * @return mixed|null
128 + */
129 + public function getHandlerStat(string $stat)
130 + {
131 + return $this->handlerStats[$stat] ?? null;
132 + }
133 +}