PluginProbe
WPIDE – File Manager & Code Editor / 3.5.9
WPIDE – File Manager & Code Editor v3.5.9
3.5.9 3.5.8 3.5.7 2.0.14 2.0.15 2.0.16 2.0.2 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1 2.2 2.3 2.3.1 2.3.2 2.4.0 2.5 2.6 3.0 3.1 3.2 3.3 All 55 releases
wpide / vendor / league / flysystem / src / Adapter / Polyfill / StreamedCopyTrait.php

StreamedCopyTrait.php in WPIDE – File Manager & Code Editor 3.5.9, at vendor/league/flysystem/src/Adapter/Polyfill/StreamedCopyTrait.php

52 lines 1.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace League\Flysystem\Adapter\Polyfill;
4
5 use League\Flysystem\Config;
6
7 trait StreamedCopyTrait
8 {
9 /**
10 * Copy a file.
11 *
12 * @param string $path
13 * @param string $newpath
14 *
15 * @return bool
16 */
17 public function copy($path, $newpath)
18 {
19 $response = $this->readStream($path);
20
21 if ($response === false || ! is_resource($response['stream'])) {
22 return false;
23 }
24
25 $result = $this->writeStream($newpath, $response['stream'], new Config());
26
27 if ($result !== false && is_resource($response['stream'])) {
28 fclose($response['stream']);
29 }
30
31 return $result !== false;
32 }
33
34 // Required abstract method
35
36 /**
37 * @param string $path
38 *
39 * @return resource
40 */
41 abstract public function readStream($path);
42
43 /**
44 * @param string $path
45 * @param resource $resource
46 * @param Config $config
47 *
48 * @return resource
49 */
50 abstract public function writeStream($path, $resource, Config $config);
51 }
52