File "ClientFactory.php"

Full Path: /home/trinadezambia/public_html/gambling/vendor/vonage/client-core/src/Users/ClientFactory.php
File size: 657 bytes
MIME-type: text/x-php
Charset: utf-8

<?php

declare(strict_types=1);

namespace Vonage\Users;

use Psr\Container\ContainerInterface;
use Vonage\Client\APIResource;
use Vonage\Client\Credentials\Handler\KeypairHandler;
use Vonage\Entity\Hydrator\ArrayHydrator;

class ClientFactory
{
    public function __invoke(ContainerInterface $container): Client
    {
        $api = $container->make(APIResource::class);
        $api
            ->setBaseUri('/v1/users')
            ->setCollectionName('users')
            ->setAuthHandler(new KeypairHandler());

        $hydrator = new ArrayHydrator();
        $hydrator->setPrototype(new User());

        return new Client($api, $hydrator);
    }
}