Updates
This commit is contained in:
114
vendor/league/fractal/src/Resource/Collection.php
vendored
Normal file
114
vendor/league/fractal/src/Resource/Collection.php
vendored
Normal file
@@ -0,0 +1,114 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
* This file is part of the League\Fractal package.
|
||||
*
|
||||
* (c) Phil Sturgeon <me@philsturgeon.uk>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
namespace League\Fractal\Resource;
|
||||
|
||||
use ArrayIterator;
|
||||
use League\Fractal\Pagination\CursorInterface;
|
||||
use League\Fractal\Pagination\PaginatorInterface;
|
||||
|
||||
/**
|
||||
* Resource Collection
|
||||
*
|
||||
* The data can be a collection of any sort of data, as long as the
|
||||
* "collection" is either array or an object implementing ArrayIterator.
|
||||
*/
|
||||
class Collection extends ResourceAbstract
|
||||
{
|
||||
/**
|
||||
* A collection of data.
|
||||
*
|
||||
* @var array|ArrayIterator
|
||||
*/
|
||||
protected $data;
|
||||
|
||||
/**
|
||||
* A the paginator instance.
|
||||
*
|
||||
* @var PaginatorInterface
|
||||
*/
|
||||
protected $paginator;
|
||||
|
||||
/**
|
||||
* The cursor instance.
|
||||
*
|
||||
* @var CursorInterface
|
||||
*/
|
||||
protected $cursor;
|
||||
|
||||
/**
|
||||
* Get the paginator instance.
|
||||
*
|
||||
* @return PaginatorInterface
|
||||
*/
|
||||
public function getPaginator()
|
||||
{
|
||||
return $this->paginator;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine if the resource has a paginator implementation.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function hasPaginator()
|
||||
{
|
||||
return $this->paginator instanceof PaginatorInterface;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the cursor instance.
|
||||
*
|
||||
* @return CursorInterface
|
||||
*/
|
||||
public function getCursor()
|
||||
{
|
||||
return $this->cursor;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine if the resource has a cursor implementation.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function hasCursor()
|
||||
{
|
||||
return $this->cursor instanceof CursorInterface;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the paginator instance.
|
||||
*
|
||||
* @param PaginatorInterface $paginator
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setPaginator(PaginatorInterface $paginator)
|
||||
{
|
||||
$this->paginator = $paginator;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the cursor instance.
|
||||
*
|
||||
* @param CursorInterface $cursor
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setCursor(CursorInterface $cursor)
|
||||
{
|
||||
$this->cursor = $cursor;
|
||||
|
||||
return $this;
|
||||
}
|
||||
}
|
||||
24
vendor/league/fractal/src/Resource/Item.php
vendored
Normal file
24
vendor/league/fractal/src/Resource/Item.php
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
* This file is part of the League\Fractal package.
|
||||
*
|
||||
* (c) Phil Sturgeon <me@philsturgeon.uk>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
namespace League\Fractal\Resource;
|
||||
|
||||
/**
|
||||
* Item Resource
|
||||
*
|
||||
* The Item Resource can stored any mixed data, usually an ORM, ODM or
|
||||
* other sort of intelligent result, DataMapper model, etc but could
|
||||
* be a basic array, object, or whatever you like.
|
||||
*/
|
||||
class Item extends ResourceAbstract
|
||||
{
|
||||
//
|
||||
}
|
||||
33
vendor/league/fractal/src/Resource/NullResource.php
vendored
Normal file
33
vendor/league/fractal/src/Resource/NullResource.php
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
* This file is part of the League\Fractal package.
|
||||
*
|
||||
* (c) Phil Sturgeon <me@philsturgeon.uk>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
namespace League\Fractal\Resource;
|
||||
|
||||
/**
|
||||
* Null Resource
|
||||
*
|
||||
* The Null Resource represents a resource that doesn't exist. This can be
|
||||
* useful to indicate that a certain relationship is null in some output
|
||||
* formats (e.g. JSON API), which require even a relationship that is null at
|
||||
* the moment to be listed.
|
||||
*/
|
||||
class NullResource extends ResourceAbstract
|
||||
{
|
||||
/**
|
||||
* Get the data.
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function getData()
|
||||
{
|
||||
// Null has no data associated with it.
|
||||
}
|
||||
}
|
||||
182
vendor/league/fractal/src/Resource/ResourceAbstract.php
vendored
Normal file
182
vendor/league/fractal/src/Resource/ResourceAbstract.php
vendored
Normal file
@@ -0,0 +1,182 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
* This file is part of the League\Fractal package.
|
||||
*
|
||||
* (c) Phil Sturgeon <me@philsturgeon.uk>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
namespace League\Fractal\Resource;
|
||||
|
||||
use League\Fractal\TransformerAbstract;
|
||||
|
||||
abstract class ResourceAbstract implements ResourceInterface
|
||||
{
|
||||
/**
|
||||
* Any item to process.
|
||||
*
|
||||
* @var mixed
|
||||
*/
|
||||
protected $data;
|
||||
|
||||
/**
|
||||
* Array of meta data.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $meta = [];
|
||||
|
||||
/**
|
||||
* The resource key.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $resourceKey;
|
||||
|
||||
/**
|
||||
* A callable to process the data attached to this resource.
|
||||
*
|
||||
* @var callable|TransformerAbstract|null
|
||||
*/
|
||||
protected $transformer;
|
||||
|
||||
/**
|
||||
* Create a new resource instance.
|
||||
*
|
||||
* @param mixed $data
|
||||
* @param callable|TransformerAbstract|null $transformer
|
||||
* @param string $resourceKey
|
||||
*/
|
||||
public function __construct($data = null, $transformer = null, $resourceKey = null)
|
||||
{
|
||||
$this->data = $data;
|
||||
$this->transformer = $transformer;
|
||||
$this->resourceKey = $resourceKey;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the data.
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function getData()
|
||||
{
|
||||
return $this->data;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the data.
|
||||
*
|
||||
* @param mixed $data
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setData($data)
|
||||
{
|
||||
$this->data = $data;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the meta data.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getMeta()
|
||||
{
|
||||
return $this->meta;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the meta data.
|
||||
*
|
||||
* @param string $metaKey
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getMetaValue($metaKey)
|
||||
{
|
||||
return $this->meta[$metaKey];
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the resource key.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getResourceKey()
|
||||
{
|
||||
return $this->resourceKey;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the transformer.
|
||||
*
|
||||
* @return callable|TransformerAbstract
|
||||
*/
|
||||
public function getTransformer()
|
||||
{
|
||||
return $this->transformer;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the transformer.
|
||||
*
|
||||
* @param callable|TransformerAbstract $transformer
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setTransformer($transformer)
|
||||
{
|
||||
$this->transformer = $transformer;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the meta data.
|
||||
*
|
||||
* @param array $meta
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setMeta(array $meta)
|
||||
{
|
||||
$this->meta = $meta;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the meta data.
|
||||
*
|
||||
* @param string $metaKey
|
||||
* @param mixed $metaValue
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setMetaValue($metaKey, $metaValue)
|
||||
{
|
||||
$this->meta[$metaKey] = $metaValue;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the resource key.
|
||||
*
|
||||
* @param string $resourceKey
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setResourceKey($resourceKey)
|
||||
{
|
||||
$this->resourceKey = $resourceKey;
|
||||
|
||||
return $this;
|
||||
}
|
||||
}
|
||||
54
vendor/league/fractal/src/Resource/ResourceInterface.php
vendored
Normal file
54
vendor/league/fractal/src/Resource/ResourceInterface.php
vendored
Normal file
@@ -0,0 +1,54 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
* This file is part of the League\Fractal package.
|
||||
*
|
||||
* (c) Phil Sturgeon <me@philsturgeon.uk>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
namespace League\Fractal\Resource;
|
||||
|
||||
interface ResourceInterface
|
||||
{
|
||||
/**
|
||||
* Get the resource key.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getResourceKey();
|
||||
|
||||
/**
|
||||
* Get the data.
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function getData();
|
||||
|
||||
/**
|
||||
* Get the transformer.
|
||||
*
|
||||
* @return callable|\League\Fractal\TransformerAbstract
|
||||
*/
|
||||
public function getTransformer();
|
||||
|
||||
/**
|
||||
* Set the data.
|
||||
*
|
||||
* @param mixed $data
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setData($data);
|
||||
|
||||
/**
|
||||
* Set the transformer.
|
||||
*
|
||||
* @param callable|\League\Fractal\TransformerAbstract $transformer
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setTransformer($transformer);
|
||||
}
|
||||
Reference in New Issue
Block a user