diff --git a/src/Appwrite/Utopia/Response.php b/src/Appwrite/Utopia/Response.php index a6ec6891c..54530b187 100644 --- a/src/Appwrite/Utopia/Response.php +++ b/src/Appwrite/Utopia/Response.php @@ -78,7 +78,8 @@ class Response extends SwooleResponse // Storage const MODEL_FILE = 'file'; const MODEL_FILE_LIST = 'fileList'; - const MODEL_BUCKET = 'bucket'; // - Missing + const MODEL_BUCKET = 'bucket'; + const MODEL_BUCKET_LIST = 'bucketList'; // Locale const MODEL_LOCALE = 'locale'; diff --git a/src/Appwrite/Utopia/Response/Model/Bucket.php b/src/Appwrite/Utopia/Response/Model/Bucket.php new file mode 100644 index 000000000..ce22ce90f --- /dev/null +++ b/src/Appwrite/Utopia/Response/Model/Bucket.php @@ -0,0 +1,97 @@ +addRule('$id', [ + 'type' => self::TYPE_STRING, + 'description' => 'Bucket ID.', + 'default' => '', + 'example' => '5e5ea5c16897e', + ]) + ->addRule('$permissions', [ + 'type' => Response::MODEL_PERMISSIONS, + 'description' => 'File permissions.', + 'default' => new \stdClass, + 'example' => new \stdClass, + 'array' => false, + ]) + ->addRule('dateCreated', [ + 'type' => self::TYPE_INTEGER, + 'description' => 'File creation date in Unix timestamp.', + 'default' => 0, + 'example' => 1592981250, + ]) + ->addRule('name', [ + 'type' => self::TYPE_STRING, + 'description' => 'Bucket name.', + 'default' => '', + 'example' => 'Documents', + ]) + ->addRule('enabled', [ + 'type' => self::TYPE_BOOLEAN, + 'description' => 'Bucket enabled.', + 'default' => true, + 'example' => false, + ]) + ->addRule('adapter', [ + 'type' => self::TYPE_STRING, + 'description' => 'Storage adapter.', + 'default' => '', + 'example' => 'local', + ]) + ->addRule('maximumFileSize', [ + 'type' => self::TYPE_INTEGER, + 'description' => 'Maximum file size supported.', + 'default' => 0, + 'example' => 100, + ]) + ->addRule('allowedFileExtensions', [ + 'type' => self::TYPE_STRING, + 'description' => 'Allowed file extensions.', + 'default' => '', + 'example' => 'jpg,png', + ]) + ->addRule('encrypted', [ + 'type' => self::TYPE_BOOLEAN, + 'description' => 'Bucket is encrypted.', + 'default' => true, + 'example' => false, + ]) + ->addRule('antivirus', [ + 'type' => self::TYPE_BOOLEAN, + 'description' => 'Virus scanning is enabled.', + 'default' => true, + 'example' => false, + ]) + ; + } + + /** + * Get Name + * + * @return string + */ + public function getName(): string + { + return 'Bucket'; + } + + /** + * Get Collection + * + * @return string + */ + public function getType(): string + { + return Response::MODEL_BUCKET; + } +}