From 796a845bcf60dbe2cbaba60517b37579fcdac604 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Ba=C4=8Do?= Date: Wed, 12 Mar 2025 12:10:10 +0100 Subject: [PATCH] Setup request & response filters --- app/controllers/general.php | 8 ++++++ src/Appwrite/Utopia/Request/Filters/V19.php | 24 ++++++++++++++++ src/Appwrite/Utopia/Response/Filters/V19.php | 30 ++++++++++++++++++++ 3 files changed, 62 insertions(+) create mode 100644 src/Appwrite/Utopia/Request/Filters/V19.php create mode 100644 src/Appwrite/Utopia/Response/Filters/V19.php diff --git a/app/controllers/general.php b/app/controllers/general.php index f28409567e..62fd54482a 100644 --- a/app/controllers/general.php +++ b/app/controllers/general.php @@ -20,10 +20,12 @@ use Appwrite\Utopia\Request; use Appwrite\Utopia\Request\Filters\V16 as RequestV16; use Appwrite\Utopia\Request\Filters\V17 as RequestV17; use Appwrite\Utopia\Request\Filters\V18 as RequestV18; +use Appwrite\Utopia\Request\Filters\V19 as RequestV19; use Appwrite\Utopia\Response; use Appwrite\Utopia\Response\Filters\V16 as ResponseV16; use Appwrite\Utopia\Response\Filters\V17 as ResponseV17; use Appwrite\Utopia\Response\Filters\V18 as ResponseV18; +use Appwrite\Utopia\Response\Filters\V19 as ResponseV19; use Appwrite\Utopia\View; use Executor\Executor; use MaxMind\Db\Reader; @@ -689,6 +691,9 @@ App::init() if (version_compare($requestFormat, '1.6.0', '<')) { $request->addFilter(new RequestV18()); } + if (version_compare($requestFormat, '1.7.0', '<')) { + $request->addFilter(new RequestV19()); + } } $domain = $request->getHostname(); @@ -838,6 +843,9 @@ App::init() if (version_compare($responseFormat, '1.6.0', '<')) { $response->addFilter(new ResponseV18()); } + if (version_compare($responseFormat, '1.7.0', '<')) { + $response->addFilter(new ResponseV19()); + } if (version_compare($responseFormat, APP_VERSION_STABLE, '>')) { $response->addHeader('X-Appwrite-Warning', "The current SDK is built for Appwrite " . $responseFormat . ". However, the current Appwrite server version is " . APP_VERSION_STABLE . ". Please downgrade your SDK to match the Appwrite version: https://appwrite.io/docs/sdks"); } diff --git a/src/Appwrite/Utopia/Request/Filters/V19.php b/src/Appwrite/Utopia/Request/Filters/V19.php new file mode 100644 index 0000000000..041c126a69 --- /dev/null +++ b/src/Appwrite/Utopia/Request/Filters/V19.php @@ -0,0 +1,24 @@ + $this->parseFunction($content), + Response::MODEL_FUNCTION_LIST => $this->handleList($content, 'functions', fn ($item) => $this->parseFunction($item)), + default => $parsedResponse, + }; + + return $parsedResponse; + } + + protected function parseFunction(array $content) + { + $content['deployment'] = $content['deploymentId'] ?? ''; + unset($content['deploymentId']); + return $content; + } +}