%PDF- %GIF98; %PNG;
Server : ApacheSystem : Linux host.digitalbabaji.in 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64 User : addictionfreeind ( 1003) PHP Version : 7.2.34 Disable Function : exec,passthru,shell_exec,system Directory : /home/addictionfreeind/www/admin1/vendor/mollie/mollie-api-php/src/Resources/ |
Upload File : |
<?php
namespace Mollie\Api\Resources;
use Mollie\Api\MollieApiClient;
abstract class CursorCollection extends BaseCollection
{
/**
* @var MollieApiClient
*/
protected $client;
/**
* @param MollieApiClient $client
* @param int $count
* @param \stdClass|null $_links
*/
final public function __construct(MollieApiClient $client, $count, $_links)
{
parent::__construct($count, $_links);
$this->client = $client;
}
/**
* @return BaseResource
*/
abstract protected function createResourceObject();
/**
* Return the next set of resources when available
*
* @return CursorCollection|null
* @throws \Mollie\Api\Exceptions\ApiException
*/
final public function next()
{
if (! $this->hasNext()) {
return null;
}
$result = $this->client->performHttpCallToFullUrl(MollieApiClient::HTTP_GET, $this->_links->next->href);
$collection = new static($this->client, $result->count, $result->_links);
foreach ($result->_embedded->{$collection->getCollectionResourceName()} as $dataResult) {
$collection[] = ResourceFactory::createFromApiResult($dataResult, $this->createResourceObject());
}
return $collection;
}
/**
* Return the previous set of resources when available
*
* @return CursorCollection|null
* @throws \Mollie\Api\Exceptions\ApiException
*/
final public function previous()
{
if (! $this->hasPrevious()) {
return null;
}
$result = $this->client->performHttpCallToFullUrl(MollieApiClient::HTTP_GET, $this->_links->previous->href);
$collection = new static($this->client, $result->count, $result->_links);
foreach ($result->_embedded->{$collection->getCollectionResourceName()} as $dataResult) {
$collection[] = ResourceFactory::createFromApiResult($dataResult, $this->createResourceObject());
}
return $collection;
}
/**
* Determine whether the collection has a next page available.
*
* @return bool
*/
public function hasNext()
{
return isset($this->_links->next->href);
}
/**
* Determine whether the collection has a previous page available.
*
* @return bool
*/
public function hasPrevious()
{
return isset($this->_links->previous->href);
}
}