From 025bdd189b8d512c91227abb63c8bb170301ddf2 Mon Sep 17 00:00:00 2001 From: YangSen-qn Date: Fri, 24 Nov 2023 10:01:04 +0800 Subject: [PATCH] add archive ir --- .../java/com/qiniu/storage/BucketManager.java | 2 +- .../storage/model/BucketLifeCycleRule.java | 55 ++++++++++++++----- .../com/qiniu/storage/model/FileInfo.java | 19 +++++-- .../com/qiniu/storage/model/StorageType.java | 5 ++ 4 files changed, 63 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/qiniu/storage/BucketManager.java b/src/main/java/com/qiniu/storage/BucketManager.java index 91eeba1fc..7dbe0c980 100644 --- a/src/main/java/com/qiniu/storage/BucketManager.java +++ b/src/main/java/com/qiniu/storage/BucketManager.java @@ -389,7 +389,7 @@ public Response changeHeaders(String bucket, String key, Map hea * * @param bucket 空间名称 * @param key 文件名称 - * @param type type=0 表示普通存储,type=1 表示低频存存储, type=2 表示归档存储, type=3 表示深度归档存储 + * @param type 存储类型 * @return Response * @throws QiniuException 异常 */ diff --git a/src/main/java/com/qiniu/storage/model/BucketLifeCycleRule.java b/src/main/java/com/qiniu/storage/model/BucketLifeCycleRule.java index 42228b8e1..5a9e8c23c 100644 --- a/src/main/java/com/qiniu/storage/model/BucketLifeCycleRule.java +++ b/src/main/java/com/qiniu/storage/model/BucketLifeCycleRule.java @@ -41,6 +41,15 @@ public class BucketLifeCycleRule { @SerializedName("to_line_after_days") int toLineAfterDays; + /** + * 指定文件上传多少天后转归档直读存储。 + * 0 表示不转归档直读存储, + * < 0 表示上传的文件立即变归档直读存储 + * > 0 表示多少天后转归档直读存储 + */ + @SerializedName("to_archive_ir_after_days") + int toArchiveIRAfterDays; + /** * 指定文件上传多少天后转归档存储。 * 0 表示不转归档存储, @@ -141,10 +150,9 @@ public int getToLineAfterDays() { /** * 在多少天后转低频存储
* - * @param toLineAfterDays - * 0 - 表示不转低频
- * 小于 0 表示上传的文件立即使用低频存储
- * 大于 0 表示转低频的天数 + * @param toLineAfterDays 0 - 表示不转低频
+ * 小于 0 表示上传的文件立即使用低频存储
+ * 大于 0 表示转低频的天数 * @return 规则信息 */ public BucketLifeCycleRule setToLineAfterDays(int toLineAfterDays) { @@ -152,6 +160,28 @@ public BucketLifeCycleRule setToLineAfterDays(int toLineAfterDays) { return this; } + /** + * 获得在多少天后转归档直读存储 + * + * @return 多少天后转归档直读存储 + */ + public int getToArchiveIRAfterDays() { + return toArchiveIRAfterDays; + } + + /** + * 在多少天后转归档直读存储
+ * + * @param toArchiveIRAfterDays 0 - 表示不转归档直读存储
+ * 小于 0 表示上传的文件立即使用归档直读存储
+ * 大于 0 表示多少天后转归档直读存储 + * @return 规则信息 + */ + public BucketLifeCycleRule setToArchiveIRAfterDays(int toArchiveIRAfterDays) { + this.toArchiveIRAfterDays = toArchiveIRAfterDays; + return this; + } + /** * 获得在多少天后转归档存储 * @@ -164,10 +194,9 @@ public int getToArchiveAfterDays() { /** * 在多少天后转归档存储
* - * @param toArchiveAfterDays - * 0 - 表示不转归档存储
- * 小于 0 表示上传的文件立即使用归档存储
- * 大于 0 表示多少天后转归档存储 + * @param toArchiveAfterDays 0 - 表示不转归档存储
+ * 小于 0 表示上传的文件立即使用归档存储
+ * 大于 0 表示多少天后转归档存储 * @return 规则信息 */ public BucketLifeCycleRule setToArchiveAfterDays(int toArchiveAfterDays) { @@ -187,10 +216,9 @@ public int getToDeepArchiveAfterDays() { /** * 在多少天后转深度归档存储
* - * @param toDeepArchiveAfterDays - * 0 - 表示不转深度归档存储
- * 小于 0 表示上传的文件立即使用深度归档存储
- * 大于 0 表示多少天后转深度归档存储 + * @param toDeepArchiveAfterDays 0 - 表示不转深度归档存储
+ * 小于 0 表示上传的文件立即使用深度归档存储
+ * 大于 0 表示多少天后转深度归档存储 * @return 规则信息 */ public BucketLifeCycleRule setToDeepArchiveAfterDays(int toDeepArchiveAfterDays) { @@ -204,11 +232,12 @@ public BucketLifeCycleRule setToDeepArchiveAfterDays(int toDeepArchiveAfterDays) * @return query */ public String asQueryString() { - return String.format("name=%s&prefix=%s&delete_after_days=%d&to_line_after_days=%d&to_archive_after_days=%d&to_deep_archive_after_days=%d", + return String.format("name=%s&prefix=%s&delete_after_days=%d&to_line_after_days=%d&to_archive_ir_after_days=%d&to_archive_after_days=%d&to_deep_archive_after_days=%d", null == name ? "" : name, null == prefix ? "" : prefix, deleteAfterDays, toLineAfterDays, + toArchiveIRAfterDays, toArchiveAfterDays, toDeepArchiveAfterDays ); diff --git a/src/main/java/com/qiniu/storage/model/FileInfo.java b/src/main/java/com/qiniu/storage/model/FileInfo.java index 322bf32c4..8e5b83b42 100644 --- a/src/main/java/com/qiniu/storage/model/FileInfo.java +++ b/src/main/java/com/qiniu/storage/model/FileInfo.java @@ -53,6 +53,7 @@ public final class FileInfo { * 1 表示低频存存储 * 2 表示归档存储 * 3 表示深度归档存储 + * 4 表示归档直读存储 */ public int type; @@ -73,7 +74,7 @@ public final class FileInfo { * 文件在设置过期时间后才会返回该字段(通过生命周期规则设置文件过期时间,仅对该功能发布后满足规则条件新上传文件返回该字段; * 历史文件想要返回该字段需要在功能发布后可通过 修改文件过期删除时间 API 或者 修改文件生命周期 API 指定过期时间;对于已 * 经设置过过期时间的历史文件,到期都会正常过期删除,只是服务端没有该字段返回) - * + *

* 例如:值为1568736000的时间,表示文件会在2019/9/18当天内删除。 */ public Long expiration; @@ -84,7 +85,7 @@ public final class FileInfo { * 文件在设置转低频后才会返回该字段(通过生命周期规则设置文件转低频,仅对该功能发布后满足规则条件新上传文件返回该字段; * 历史文件想要返回该字段需要在功能发布后可通过 修改文件生命周期 API 指定转低频时间;对于已经设置过转低频时间的历史文 * 件,到期都会正常执行,只是服务端没有该字段返回) - * + *

* 例如:值为1568736000的时间,表示文件会在2019/9/18当天转为低频存储类型。 */ public Long transitionToIA; @@ -94,7 +95,17 @@ public final class FileInfo { * 文件在设置转归档后才会返回该字段(通过生命周期规则设置文件转归档,仅对该功能发布后满足规则条件新上传文件返回该字段; * 历史文件想要返回该字段需要在功能发布后可通过 修改文件生命周期 API 指定转归档时间;对于已经设置过转归档时间的历史文 * 件,到期都会正常执行,只是服务端没有该字段返回) - * + *

+ * 例如:值为1568736000的时间,表示文件会在2019/9/18当天转为归档存储类型。 + */ + public Long transitionToArchiveIR; + + /** + * 文件生命周期中转为归档存储的日期,int64 类型,Unix 时间戳格式 ,具体日期计算参考 生命周期管理。 + * 文件在设置转归档后才会返回该字段(通过生命周期规则设置文件转归档,仅对该功能发布后满足规则条件新上传文件返回该字段; + * 历史文件想要返回该字段需要在功能发布后可通过 修改文件生命周期 API 指定转归档时间;对于已经设置过转归档时间的历史文 + * 件,到期都会正常执行,只是服务端没有该字段返回) + *

* 例如:值为1568736000的时间,表示文件会在2019/9/18当天转为归档存储类型。 */ @SerializedName("transitionToARCHIVE") @@ -105,7 +116,7 @@ public final class FileInfo { * 文件在设置转深度归档后才会返回该字段(通过生命周期规则设置文件转深度归档,仅对该功能发布后满足规则条件新上传文件返回该字段; * 历史文件想要返回该字段需要在功能发布后可通过 修改文件生命周期 API 指定转深度归档时间;对于已经设置过转深度归档时间的历史文 * 件,到期都会正常执行,只是服务端没有该字段返回) - * + *

* 例如:值为1568736000的时间,表示文件会在2019/9/18当天转为深度归档存储类型。 */ public Long transitionToDeepArchive; diff --git a/src/main/java/com/qiniu/storage/model/StorageType.java b/src/main/java/com/qiniu/storage/model/StorageType.java index efcf904b7..8feb94db0 100644 --- a/src/main/java/com/qiniu/storage/model/StorageType.java +++ b/src/main/java/com/qiniu/storage/model/StorageType.java @@ -14,6 +14,11 @@ public enum StorageType { */ INFREQUENCY, + /** + * 归档直读存储 + */ + ArchiveIR, + /** * 归档存储 */