PluginProbe
JetBackup – Backup, Restore & Migrate / 1.4.6
JetBackup – Backup, Restore & Migrate v1.4.6
3.1.23.6 3.1.23.5 3.1.23.3 3.1.22.4 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 All 82 releases
backup / com / lib / BackupGuard / RequestHandler.php
RequestHandler.php
72 lines 1.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace BackupGuard;
4
5 require_once(dirname(__FILE__).'/Curl.php');
6 require_once(dirname(__FILE__).'/Stream.php');
7
8 abstract class RequestHandler
9 {
10 protected $url = '';
11 protected $params = array();
12 protected $headers = array();
13 protected $httpCode = false;
14 protected $contentType = false;
15 protected $body = false;
16 protected $getWithQueryParams = false;
17
18 public function __construct($url)
19 {
20 $this->url = $url;
21 }
22
23 abstract public function post();
24
25 abstract public function get();
26
27 public static function createRequest($url)
28 {
29 //if curl is available, use it
30 if (function_exists('curl_version')) {
31 return new Curl($url);
32 }
33
34 return new Stream($url);
35 }
36
37 public function addHeader($header)
38 {
39 $this->headers[] = $header;
40 }
41
42 public function setHeaders($headers)
43 {
44 $this->headers = $headers;
45 }
46
47 public function addParam($key, $value)
48 {
49 $this->params[$key] = $value;
50 }
51
52 public function setParams($params)
53 {
54 $this->params = $params;
55 }
56
57 protected function parseResponse()
58 {
59 $response = new Response();
60 $response->setBody($this->body);
61 $response->setHttpStatus($this->httpCode);
62 $response->setContentType($this->contentType);
63
64 //if the response is in json format, decode it
65 if ($this->contentType == 'application/json') {
66 $response->parseJsonBody();
67 }
68
69 return $response;
70 }
71 }
72