From 324f65c8380114f913b93fc9108fd40b18600d63 Mon Sep 17 00:00:00 2001 From: Damodar Lohani Date: Wed, 27 Dec 2023 02:21:53 +0000 Subject: [PATCH] token response model --- src/Appwrite/Utopia/Response.php | 5 ++ .../Utopia/Response/Model/FileToken.php | 71 +++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 src/Appwrite/Utopia/Response/Model/FileToken.php diff --git a/src/Appwrite/Utopia/Response.php b/src/Appwrite/Utopia/Response.php index 7e52536eed..0dcb848a05 100644 --- a/src/Appwrite/Utopia/Response.php +++ b/src/Appwrite/Utopia/Response.php @@ -67,6 +67,7 @@ use Appwrite\Utopia\Response\Model\Project; use Appwrite\Utopia\Response\Model\Rule; use Appwrite\Utopia\Response\Model\Deployment; use Appwrite\Utopia\Response\Model\Detection; +use Appwrite\Utopia\Response\Model\FileToken; use Appwrite\Utopia\Response\Model\Headers; use Appwrite\Utopia\Response\Model\TemplateEmail; use Appwrite\Utopia\Response\Model\Token; @@ -175,6 +176,8 @@ class Response extends SwooleResponse public const MODEL_FILE_LIST = 'fileList'; public const MODEL_BUCKET = 'bucket'; public const MODEL_BUCKET_LIST = 'bucketList'; + public const MODEL_FILE_TOKEN = 'fileToken'; + public const MODEL_FILE_TOKEN_LIST = 'fileTokenList'; // Locale public const MODEL_LOCALE = 'locale'; @@ -303,6 +306,7 @@ class Response extends SwooleResponse ->setModel(new BaseList('Logs List', self::MODEL_LOG_LIST, 'logs', self::MODEL_LOG)) ->setModel(new BaseList('Files List', self::MODEL_FILE_LIST, 'files', self::MODEL_FILE)) ->setModel(new BaseList('Buckets List', self::MODEL_BUCKET_LIST, 'buckets', self::MODEL_BUCKET)) + ->setModel(new BaseList('File Tokens List', self::MODEL_FILE_TOKEN_LIST, 'tokens', self::MODEL_FILE_TOKEN)) ->setModel(new BaseList('Teams List', self::MODEL_TEAM_LIST, 'teams', self::MODEL_TEAM)) ->setModel(new BaseList('Memberships List', self::MODEL_MEMBERSHIP_LIST, 'memberships', self::MODEL_MEMBERSHIP)) ->setModel(new BaseList('Functions List', self::MODEL_FUNCTION_LIST, 'functions', self::MODEL_FUNCTION)) @@ -366,6 +370,7 @@ class Response extends SwooleResponse ->setModel(new LocaleCode()) ->setModel(new File()) ->setModel(new Bucket()) + ->setModel(new FileToken()) ->setModel(new Team()) ->setModel(new Membership()) ->setModel(new Func()) diff --git a/src/Appwrite/Utopia/Response/Model/FileToken.php b/src/Appwrite/Utopia/Response/Model/FileToken.php new file mode 100644 index 0000000000..c308120ff9 --- /dev/null +++ b/src/Appwrite/Utopia/Response/Model/FileToken.php @@ -0,0 +1,71 @@ +addRule('$id', [ + 'type' => self::TYPE_STRING, + 'description' => 'Token ID.', + 'default' => '', + 'example' => 'bb8ea5c16897e', + ]) + ->addRule('$createdAt', [ + 'type' => self::TYPE_DATETIME, + 'description' => 'Token creation date in ISO 8601 format.', + 'default' => '', + 'example' => self::TYPE_DATETIME_EXAMPLE, + ]) + ->addRule('bucketId', [ + 'type' => self::TYPE_STRING, + 'description' => 'Bucket ID.', + 'default' => '', + 'example' => '5e5ea5c168bb8', + ]) + ->addRule('fileId', [ + 'type' => self::TYPE_STRING, + 'description' => 'File ID.', + 'default' => '', + 'example' => '5e5ea5c168bb8', + ]) + ->addRule('secret', [ + 'type' => self::TYPE_STRING, + 'description' => 'Token secret key.', + 'default' => '', + 'example' => '', + ]) + ->addRule('expiryDate', [ + 'type' => self::TYPE_DATETIME, + 'description' => 'Token expiration date in ISO 8601 format.', + 'default' => '', + 'example' => self::TYPE_DATETIME_EXAMPLE, + ]) + ; + } + + /** + * Get Name + * + * @return string + */ + public function getName(): string + { + return 'FileToken'; + } + + /** + * Get Type + * + * @return string + */ + public function getType(): string + { + return Response::MODEL_FILE_TOKEN; + } +}