PluginProbe ʕ •ᴥ•ʔ
JetBackup – Backup, Restore & Migrate / 1.5.3
JetBackup – Backup, Restore & Migrate v1.5.3
3.1.22.3 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.8.1 1.4.9 1.5.0 1.5.1 1.5.1.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6.0 1.6.10 1.6.11 1.6.12 1.6.13 1.6.15 1.6.5.1 1.6.8.8 1.6.9 1.6.9.1 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7.5 2.0.8.7 2.0.9.11 2.0.9.14 2.0.9.15 2.0.9.6 2.0.9.7 2.0.9.9 3.1.10.7 3.1.11.1 3.1.12.3 3.1.13.4 3.1.14.17 3.1.15.4 3.1.16.1 3.1.17.5 3.1.18.10 3.1.18.8 3.1.18.9 3.1.19.8 3.1.20.3 3.1.21.3 3.1.7.9 3.1.9.2 trunk 1.1.90 1.1.91 1.2.0 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 1.4.2
backup / com / lib / Dropbox / CurlStreamRelay.php
backup / com / lib / Dropbox Last commit date
Exception 5 years ago WebAuthException 5 years ago certs 5 years ago AppInfo.php 5 years ago AppInfoLoadException.php 5 years ago ArrayEntryStore.php 5 years ago AuthBase.php 5 years ago AuthInfo.php 5 years ago AuthInfoLoadException.php 5 years ago Checker.php 5 years ago Client.php 5 years ago Curl.php 5 years ago CurlStreamRelay.php 5 years ago DeserializeException.php 5 years ago DropboxMetadataHeaderCatcher.php 5 years ago Exception.php 5 years ago Host.php 5 years ago HttpResponse.php 5 years ago OAuth1AccessToken.php 5 years ago OAuth1Upgrader.php 5 years ago Path.php 5 years ago RequestUtil.php 5 years ago RootCertificates.php 5 years ago SSLTester.php 5 years ago Security.php 5 years ago StreamReadException.php 5 years ago Util.php 5 years ago ValueStore.php 5 years ago WebAuth.php 5 years ago WebAuthBase.php 5 years ago WebAuthNoRedirect.php 5 years ago WriteMode.php 5 years ago autoload.php 5 years ago strict.php 5 years ago
CurlStreamRelay.php
46 lines
1 <?php
2 namespace Dropbox;
3
4 /**
5 * A CURLOPT_WRITEFUNCTION that will write HTTP response data to $outStream if
6 * it's an HTTP 200 response. For all other HTTP status codes, it'll save the
7 * output in a string, which you can retrieve it via {@link getErrorBody}.
8 *
9 * @internal
10 */
11 class CurlStreamRelay
12 {
13 var $outStream;
14 var $errorData;
15 var $isError;
16
17 function __construct($ch, $outStream)
18 {
19 $this->outStream = $outStream;
20 $this->errorData = array();
21 $isError = null;
22 curl_setopt($ch, CURLOPT_WRITEFUNCTION, array($this, 'writeData'));
23 }
24
25 function writeData($ch, $data)
26 {
27 if ($this->isError === null) {
28 $statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
29 $this->isError = ($statusCode !== 200);
30 }
31
32 if ($this->isError) {
33 $this->errorData[] = $data;
34 } else {
35 fwrite($this->outStream, $data);
36 }
37
38 return strlen($data);
39 }
40
41 function getErrorBody()
42 {
43 return implode($this->errorData);
44 }
45 }
46