1 | <?php namespace Arcanedev\Stripe\Utilities; |
||
14 | abstract class Util implements UtilContract |
||
15 | { |
||
16 | /* ----------------------------------------------------------------- |
||
17 | | Properties |
||
18 | | ----------------------------------------------------------------- |
||
19 | */ |
||
20 | |||
21 | /** |
||
22 | * Available Resources. |
||
23 | * |
||
24 | * @var array |
||
25 | */ |
||
26 | private static $resources = [ |
||
27 | 'account' => Resources\Account::class, |
||
28 | 'alipay_account' => Resources\AlipayAccount::class, |
||
29 | 'apple_pay_domain' => Resources\ApplePayDomain::class, |
||
30 | 'balance_transaction' => Resources\BalanceTransaction::class, |
||
31 | 'bank_account' => Resources\BankAccount::class, |
||
32 | 'bitcoin_receiver' => Resources\BitcoinReceiver::class, |
||
33 | 'bitcoin_transaction' => Resources\BitcoinTransaction::class, |
||
34 | 'card' => Resources\Card::class, |
||
35 | 'charge' => Resources\Charge::class, |
||
36 | 'country_spec' => Resources\CountrySpec::class, |
||
37 | 'coupon' => Resources\Coupon::class, |
||
38 | 'customer' => Resources\Customer::class, |
||
39 | 'discount' => Resources\Discount::class, |
||
40 | 'dispute' => Resources\Dispute::class, |
||
41 | 'event' => Resources\Event::class, |
||
42 | 'fee_refund' => Resources\ApplicationFeeRefund::class, |
||
43 | 'file_upload' => Resources\FileUpload::class, |
||
44 | 'invoice' => Resources\Invoice::class, |
||
45 | 'invoiceitem' => Resources\InvoiceItem::class, |
||
46 | 'list' => Collection::class, // List Object |
||
47 | 'order' => Resources\Order::class, |
||
48 | 'order_item' => Resources\OrderItem::class, |
||
49 | 'order_return' => Resources\OrderReturn::class, |
||
50 | 'payout' => Resources\Payout::class, |
||
51 | 'plan' => Resources\Plan::class, |
||
52 | 'product' => Resources\Product::class, |
||
53 | 'recipient' => Resources\Recipient::class, |
||
54 | 'recipient_transfer' => Resources\RecipientTransfer::class, |
||
55 | 'refund' => Resources\Refund::class, |
||
56 | 'sku' => Resources\Sku::class, |
||
57 | 'source' => Resources\Source::class, |
||
58 | 'subscription' => Resources\Subscription::class, |
||
59 | 'subscription_item' => Resources\SubscriptionItem::class, |
||
60 | 'three_d_secure' => Resources\ThreeDSecure::class, |
||
61 | 'token' => Resources\Token::class, |
||
62 | 'transfer' => Resources\Transfer::class, |
||
63 | 'transfer_reversal' => Resources\TransferReversal::class, |
||
64 | ]; |
||
65 | |||
66 | private static $isHashEqualsAvailable = null; |
||
67 | |||
68 | /* ----------------------------------------------------------------- |
||
69 | | Main Methods |
||
70 | | ----------------------------------------------------------------- |
||
71 | */ |
||
72 | |||
73 | /** |
||
74 | * Recursively converts the PHP Stripe object to an array. |
||
75 | * |
||
76 | * @param array $values |
||
77 | * |
||
78 | * @return array |
||
79 | */ |
||
80 | 12 | public static function convertStripeObjectToArray($values) |
|
101 | |||
102 | /** |
||
103 | * Converts a response from the Stripe API to the corresponding PHP object. |
||
104 | * |
||
105 | * @param array $response |
||
106 | * @param array $options |
||
107 | * |
||
108 | * @return \Arcanedev\Stripe\StripeObject|\Arcanedev\Stripe\StripeResource|\Arcanedev\Stripe\Collection|array |
||
109 | */ |
||
110 | 513 | public static function convertToStripeObject($response, $options) |
|
127 | |||
128 | /** |
||
129 | * Get Class Type. |
||
130 | * |
||
131 | * @param array $response |
||
132 | * |
||
133 | * @return string |
||
134 | */ |
||
135 | 483 | private static function getClassTypeObject($response) |
|
141 | |||
142 | /** |
||
143 | * Compares two strings for equality. The time taken is independent of the |
||
144 | * number of characters that match. |
||
145 | * |
||
146 | * @param string $one |
||
147 | * @param string $two |
||
148 | * |
||
149 | * @return bool |
||
150 | */ |
||
151 | 18 | public static function secureCompare($one, $two) |
|
173 | |||
174 | /* ----------------------------------------------------------------- |
||
175 | | Check Methods |
||
176 | | ----------------------------------------------------------------- |
||
177 | */ |
||
178 | |||
179 | /** |
||
180 | * Whether the provided array (or other) is a list rather than a dictionary. |
||
181 | * |
||
182 | * @param mixed $array |
||
183 | * |
||
184 | * @return bool |
||
185 | */ |
||
186 | 516 | public static function isList($array) |
|
197 | |||
198 | /** |
||
199 | * Check if the object is a resource. |
||
200 | * |
||
201 | * @param array $response |
||
202 | * |
||
203 | * @return bool |
||
204 | */ |
||
205 | 483 | private static function isClassTypeObjectExist($response) |
|
213 | } |
||
214 |