<?php namespace Xentral\Modules\Api\Resource\Result; class CollectionResult extends AbstractResult { /** * @param array $collection * @param array|null $pagination */ public function __construct(array $collection, array $pagination = null) { if (empty($pagination)) { //throw new \CountryInvalidArgumentException('CollectionResult must contain pagination'); // @todo für GetIDs } if (empty($collection)) { throw new \InvalidArgumentException('CollectionResult can not be empty'); } $firstKey = key($collection); if (!is_numeric($firstKey)) { throw new \InvalidArgumentException('CollectionResult can only store an index based array'); } if (!is_array($collection[$firstKey]) || empty($collection[$firstKey])) { throw new \RuntimeException('CollectionResult must contain at least one result'); } // @todo Sicherstellen dass Paginierung passt $this->type = self::RESULT_TYPE_COLLECTION; $this->data = $collection; $this->pagination = $pagination; } }