1
0
Fork 0
mirror of synced 2024-09-30 09:18:14 +13:00

feat: add missing response models

This commit is contained in:
Christy Jacob 2022-03-01 14:59:24 +04:00
parent fd079d8fb7
commit 22ca8fc8c6
2 changed files with 85 additions and 13 deletions

View file

@ -129,16 +129,6 @@ App::init(function ($utopia, $request, $response, $console, $project, $dbForCons
$selfDomain = new Domain($request->getHostname());
$endDomain = new Domain((string)$origin);
// var_dump('referer', $referrer);
// var_dump('origin', $origin);
// var_dump('port', $request->getPort());
// var_dump('hostname', $request->getHostname());
// var_dump('protocol', $request->getProtocol());
// var_dump('method', $request->getMethod());
// var_dump('ip', $request->getIP());
// var_dump('-----------------');
// var_dump($request->debug());
Config::setParam('domainVerification',
($selfDomain->getRegisterable() === $endDomain->getRegisterable()) &&
$endDomain->getRegisterable() !== '');
@ -158,12 +148,12 @@ App::init(function ($utopia, $request, $response, $console, $project, $dbForCons
$responseFormat = $request->getHeader('x-appwrite-response-format', App::getEnv('_APP_SYSTEM_RESPONSE_FORMAT', ''));
if ($responseFormat) {
switch($responseFormat) {
case version_compare ($responseFormat , '0.11.2', '<=') :
Response::setFilter(new ResponseV11());
break;
case version_compare ($responseFormat , '0.12.4', '<='):
Response::setFilter(new ResponseV12());
break;
case version_compare ($responseFormat , '0.11.0', '<=') :
Response::setFilter(new ResponseV11());
break;
default:
Response::setFilter(null);
}

View file

@ -15,24 +15,45 @@ class V12 extends Filter
switch ($model) {
// Update permissions
case Response::MODEL_ERROR_DEV:
case Response::MODEL_ERROR:
$parsedResponse = $this->parseError($content);
break;
case Response::MODEL_SESSION:
$parsedResponse = $this->parseSession($content);
break;
case Response::MODEL_SESSION_LIST:
$parsedResponse = $this->parseSessionList($content);
break;
case Response::MODEL_FILE:
$parsedResponse = $this->parseFile($content);
break;
case Response::MODEL_FILE_LIST:
$parsedResponse = $this->parseFileList($content);
break;
case Response::MODEL_FUNCTION:
$parsedResponse = $this->parseFunction($content);
break;
case Response::MODEL_FUNCTION_LIST:
$parsedResponse = $this->parseFunctionList($content);
break;
case Response::MODEL_DEPLOYMENT:
$parsedResponse = $this->parseDeployment($content);
break;
case Response::MODEL_DEPLOYMENT_LIST:
$parsedResponse = $this->parseDeploymentList($content);
break;
case Response::MODEL_EXECUTION:
$parsedResponse = $this->parseExecution($content);
break;
case Response::MODEL_EXECUTION_LIST:
$parsedResponse = $this->parseExecutionList($content);
break;
case Response::MODEL_USAGE_BUCKETS:
$parsedResponse = $this->parseUsageBuckets($content);
@ -64,6 +85,17 @@ class V12 extends Filter
return $content;
}
protected function parseSessionList(array $content)
{
$sessions = $content['sessions'];
$parsedResponse = [];
foreach ($sessions as $document) {
$parsedResponse[] = $this->parseSession($document);
}
$content['sessions'] = $parsedResponse;
return $content;
}
protected function parseFile(array $content)
{
unset($content['bucketId']);
@ -73,6 +105,17 @@ class V12 extends Filter
return $content;
}
protected function parseFileList(array $content)
{
$files = $content['files'];
$parsedResponse = [];
foreach ($files as $document) {
$parsedResponse[] = $this->parseFile($document);
}
$content['files'] = $parsedResponse;
return $content;
}
protected function parseFunction(array $content)
{
$content['tag'] = $content['deployment'];
@ -80,6 +123,35 @@ class V12 extends Filter
return $content;
}
protected function parseFunctionList(array $content)
{
$functions = $content['functions'];
$parsedResponse = [];
foreach ($functions as $document) {
$parsedResponse[] = $this->parseFunction($document);
}
$content['functions'] = $parsedResponse;
return $content;
}
protected function parseDeployment(array $content)
{
$content['functionId'] = $content['resourceId'];
$content['command'] = $content['entrypoint'];
return $content;
}
protected function parseDeploymentList(array $content)
{
$deployments = $content['deployments'];
$parsedResponse = [];
foreach ($deployments as $document) {
$parsedResponse[] = $this->parseDeployment($document);
}
$content['deployments'] = $parsedResponse;
return $content;
}
protected function parseUsageBuckets(array $content)
{
unset($content['filesStorage']);
@ -112,4 +184,14 @@ class V12 extends Filter
return $content;
}
protected function parseExecutionList($content) {
$executions = $content['executions'];
$parsedResponse = [];
foreach ($executions as $document) {
$parsedResponse[] = $this->parseExecution($document);
}
$content['executions'] = $parsedResponse;
return $content;
}
}