79 lines
3 KiB
PHP
79 lines
3 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Uwil\ArcadiaKiotaOpenApiClient;
|
|
|
|
use Microsoft\Kiota\Abstractions\ApiClientBuilder;
|
|
use Microsoft\Kiota\Abstractions\BaseRequestBuilder;
|
|
use Microsoft\Kiota\Abstractions\RequestAdapter;
|
|
use Microsoft\Kiota\Serialization\Form\FormParseNodeFactory;
|
|
use Microsoft\Kiota\Serialization\Form\FormSerializationWriterFactory;
|
|
use Microsoft\Kiota\Serialization\Json\JsonParseNodeFactory;
|
|
use Microsoft\Kiota\Serialization\Json\JsonSerializationWriterFactory;
|
|
use Microsoft\Kiota\Serialization\Multipart\MultipartSerializationWriterFactory;
|
|
use Microsoft\Kiota\Serialization\Text\TextParseNodeFactory;
|
|
use Microsoft\Kiota\Serialization\Text\TextSerializationWriterFactory;
|
|
use Uwil\ArcadiaKiotaOpenApiClient\Brands\BrandsRequestBuilder;
|
|
use Uwil\ArcadiaKiotaOpenApiClient\Employees\EmployeesRequestBuilder;
|
|
use Uwil\ArcadiaKiotaOpenApiClient\Health\HealthRequestBuilder;
|
|
use Uwil\ArcadiaKiotaOpenApiClient\IncoSheets\IncoSheetsRequestBuilder;
|
|
|
|
/**
|
|
* The main entry point of the SDK, exposes the configuration and the fluent API.
|
|
*/
|
|
class ApiClient extends BaseRequestBuilder
|
|
{
|
|
/**
|
|
* The brands property
|
|
*/
|
|
public function brands(): BrandsRequestBuilder
|
|
{
|
|
return new BrandsRequestBuilder($this->pathParameters, $this->requestAdapter);
|
|
}
|
|
|
|
/**
|
|
* The employees property
|
|
*/
|
|
public function employees(): EmployeesRequestBuilder
|
|
{
|
|
return new EmployeesRequestBuilder($this->pathParameters, $this->requestAdapter);
|
|
}
|
|
|
|
/**
|
|
* The health property
|
|
*/
|
|
public function health(): HealthRequestBuilder
|
|
{
|
|
return new HealthRequestBuilder($this->pathParameters, $this->requestAdapter);
|
|
}
|
|
|
|
/**
|
|
* The incoSheets property
|
|
*/
|
|
public function incoSheets(): IncoSheetsRequestBuilder
|
|
{
|
|
return new IncoSheetsRequestBuilder($this->pathParameters, $this->requestAdapter);
|
|
}
|
|
|
|
/**
|
|
* Instantiates a new ApiClient and sets the default values.
|
|
*
|
|
* @param RequestAdapter $requestAdapter The request adapter to use to execute the requests.
|
|
*/
|
|
public function __construct(RequestAdapter $requestAdapter)
|
|
{
|
|
parent::__construct($requestAdapter, [], '{+baseurl}');
|
|
ApiClientBuilder::registerDefaultSerializer(JsonSerializationWriterFactory::class);
|
|
ApiClientBuilder::registerDefaultSerializer(TextSerializationWriterFactory::class);
|
|
ApiClientBuilder::registerDefaultSerializer(FormSerializationWriterFactory::class);
|
|
ApiClientBuilder::registerDefaultSerializer(MultipartSerializationWriterFactory::class);
|
|
ApiClientBuilder::registerDefaultDeserializer(JsonParseNodeFactory::class);
|
|
ApiClientBuilder::registerDefaultDeserializer(TextParseNodeFactory::class);
|
|
ApiClientBuilder::registerDefaultDeserializer(FormParseNodeFactory::class);
|
|
if (empty($this->requestAdapter->getBaseUrl())) {
|
|
$this->requestAdapter->setBaseUrl('http://127.0.0.1:8000/api/v1');
|
|
}
|
|
$this->pathParameters['baseurl'] = $this->requestAdapter->getBaseUrl();
|
|
}
|
|
}
|