netbox-php/src/Api/AbstractApi.php
2021-03-12 15:57:29 -04:00

60 lines
1.4 KiB
PHP

<?php
namespace wickedsoft\NetBox\Api;
use wickedsoft\NetBox\Client;
abstract class AbstractApi implements ApiInterface
{
/** @var \wickedsoft\NetBox\Client */
public $client;
/**
* AbstractApi constructor.
* @param \wickedsoft\NetBox\Client $client
*/
public function __construct(Client $client)
{
$this->client = $client;
}
/**
* @param array $parameters
* @return mixed
* @throws \GuzzleHttp\Exception\GuzzleException
*/
protected function get($path, $parameters)
{
return $this->client->getHttpClient()->get($path, $parameters);
}
/**
* @param array $parameters
* @return mixed
* @throws \GuzzleHttp\Exception\GuzzleException
*/
protected function post($path, $parameters)
{
return $this->client->getHttpClient()->post($path, $parameters);
}
/**
* @param array $parameters
* @return mixed
* @throws \GuzzleHttp\Exception\GuzzleException
*/
protected function put($path, $parameters)
{
return $this->client->getHttpClient()->put($path, $parameters);
}
/**
* @param array $parameters
* @return mixed
* @throws \GuzzleHttp\Exception\GuzzleException
*/
protected function delete($path, $parameters)
{
return $this->client->getHttpClient()->delete($path, $parameters);
}
}