File: /var/www/vhost/disk-apps/agile-selling-orl/vendor/automattic/woocommerce/src/WooCommerce/Client.php
<?php
/**
* WooCommerce REST API Client
*
* @category Client
* @package Automattic/WooCommerce
*/
namespace Automattic\WooCommerce;
use Automattic\WooCommerce\HttpClient\HttpClient;
/**
* REST API Client class.
*
* @package Automattic/WooCommerce
*/
class Client
{
/**
* WooCommerce REST API Client version.
*/
const VERSION = '3.0.0';
/**
* HttpClient instance.
*
* @var HttpClient
*/
public $http;
/**
* Initialize client.
*
* @param string $url Store URL.
* @param string $consumerKey Consumer key.
* @param string $consumerSecret Consumer secret.
* @param array $options Options (version, timeout, verify_ssl).
*/
public function __construct($url, $consumerKey, $consumerSecret, $options = [])
{
$this->http = new HttpClient($url, $consumerKey, $consumerSecret, $options);
}
/**
* POST method.
*
* @param string $endpoint API endpoint.
* @param array $data Request data.
*
* @return array
*/
public function post($endpoint, $data)
{
return $this->http->request($endpoint, 'POST', $data);
}
/**
* PUT method.
*
* @param string $endpoint API endpoint.
* @param array $data Request data.
*
* @return array
*/
public function put($endpoint, $data)
{
return $this->http->request($endpoint, 'PUT', $data);
}
/**
* GET method.
*
* @param string $endpoint API endpoint.
* @param array $parameters Request parameters.
*
* @return array
*/
public function get($endpoint, $parameters = [])
{
return $this->http->request($endpoint, 'GET', [], $parameters);
}
/**
* DELETE method.
*
* @param string $endpoint API endpoint.
* @param array $parameters Request parameters.
*
* @return array
*/
public function delete($endpoint, $parameters = [])
{
return $this->http->request($endpoint, 'DELETE', [], $parameters);
}
/**
* OPTIONS method.
*
* @param string $endpoint API endpoint.
*
* @return array
*/
public function options($endpoint)
{
return $this->http->request($endpoint, 'OPTIONS', [], []);
}
}