feat: starter code for Response Filters
This commit is contained in:
parent
4c1f4c9092
commit
898d89f322
|
@ -6,6 +6,8 @@ use Exception;
|
|||
use Utopia\Swoole\Response as SwooleResponse;
|
||||
use Swoole\Http\Response as SwooleHTTPResponse;
|
||||
use Appwrite\Database\Document;
|
||||
use Appwrite\Utopia\Response\Filter;
|
||||
use Appwrite\Utopia\Response\Filter\V06;
|
||||
use Appwrite\Utopia\Response\Model;
|
||||
use Appwrite\Utopia\Response\Model\None;
|
||||
use Appwrite\Utopia\Response\Model\Any;
|
||||
|
@ -112,6 +114,11 @@ class Response extends SwooleResponse
|
|||
const MODEL_DOMAIN = 'domain';
|
||||
const MODEL_DOMAIN_LIST = 'domainList';
|
||||
|
||||
/**
|
||||
* @var Filter
|
||||
*/
|
||||
private static $filter = null;
|
||||
|
||||
/**
|
||||
* @var array
|
||||
*/
|
||||
|
@ -329,4 +336,37 @@ class Response extends SwooleResponse
|
|||
{
|
||||
return $this->payload;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Function to set a response filter
|
||||
*
|
||||
* @param $filter the response filter to set
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public static function setFilter(Filter $filter)
|
||||
{
|
||||
self::$filter = $filter;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the currently set filter
|
||||
*
|
||||
* @return Filter
|
||||
*/
|
||||
public static function getFilter(): Filter
|
||||
{
|
||||
return self::$filter;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a filter has been set
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function isFilter(): bool
|
||||
{
|
||||
return self::$filter != null;
|
||||
}
|
||||
}
|
||||
|
|
16
src/Appwrite/Utopia/Response/Filter.php
Normal file
16
src/Appwrite/Utopia/Response/Filter.php
Normal file
|
@ -0,0 +1,16 @@
|
|||
<?php
|
||||
|
||||
namespace Appwrite\Utopia\Response;
|
||||
|
||||
abstract class Filter {
|
||||
|
||||
/**
|
||||
* Parse the content to another format.
|
||||
*
|
||||
* @param array $content
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
abstract function parse(array $content): array;
|
||||
|
||||
}
|
14
src/Appwrite/Utopia/Response/Filters/V06.php
Normal file
14
src/Appwrite/Utopia/Response/Filters/V06.php
Normal file
|
@ -0,0 +1,14 @@
|
|||
<?php
|
||||
|
||||
namespace Appwrite\Utopia\Response\Filter;
|
||||
|
||||
use Appwrite\Utopia\Response\Filter;
|
||||
|
||||
class V06 extends Filter {
|
||||
|
||||
|
||||
// Convert 0.7 Data format to 0.6 format
|
||||
public function parse(array $content): array {
|
||||
return array();
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue