Api.php
1.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?php
namespace Razorpay\Api;
class Api
{
protected static $baseUrl = 'https://api.razorpay.com/v1/';
protected static $key = null;
protected static $secret = null;
/*
* App info is to store the Plugin/integration
* information
*/
public static $appsDetails = array();
const VERSION = '2.8.5';
/**
* @param string $key
* @param string $secret
*/
public function __construct($key, $secret)
{
self::$key = $key;
self::$secret = $secret;
}
/*
* Set Headers
*/
public function setHeader($header, $value)
{
Request::addHeader($header, $value);
}
public function setAppDetails($title, $version = null)
{
$app = array(
'title' => $title,
'version' => $version
);
array_push(self::$appsDetails, $app);
}
public function getAppsDetails()
{
return self::$appsDetails;
}
public function setBaseUrl($baseUrl)
{
self::$baseUrl = $baseUrl;
}
/**
* @param string $name
* @return mixed
*/
public function __get($name)
{
$className = __NAMESPACE__.'\\'.ucwords($name);
$entity = new $className();
return $entity;
}
public static function getBaseUrl()
{
return self::$baseUrl;
}
public static function getKey()
{
return self::$key;
}
public static function getSecret()
{
return self::$secret;
}
public static function getFullUrl($relativeUrl)
{
return self::getBaseUrl() . $relativeUrl;
}
}