com.volcengine.model.imagex.v2.CreateImageMigrateTaskBodyTaskSource Maven / Gradle / Ivy
Show all versions of volc-sdk-java Show documentation
package com.volcengine.model.imagex.v2;
import com.alibaba.fastjson.JSON;
import java.util.List;
/**
* CreateImageMigrateTaskBodyTaskSource
*/
@lombok.Data
public final class CreateImageMigrateTaskBodyTaskSource {
/**
* 迁移云服务商。取值如下所示:
*
*
*
* - `OSS`:阿里云
*
* - `COS`:腾讯云
*
* - `KODO`:七牛云
*
* - `BOS`:百度云
*
* - `OBS`:华为云
*
* - `Ucloud`:Ucloud file
*
* - `AWS`:AWS 国际站
*
* - `S3`:其他 S3 协议存储
*
* - `URL`:以上传 URL 列表的方式迁移
*/
@com.alibaba.fastjson.annotation.JSONField(name = "Vendor")
private String vendor;
/**
* 仅当`Vendor` 非 `URL`时为必填。
*
* Access Key,与 Secret Key 同时填写,为了保证有访问源数据桶的权限。
*
*
*
* - 请参考[云数据迁移准备](https://www.volcengine.com/docs/508/129213)获取对应阿里云OSS、腾讯云COS、七牛云KODO、百度云BOS、华为云OBS、 优刻得(Ucloud File)、AWS国际站的账号 AK/SK。
*
* - 对于其他 S3 协议存储的AK/SK,请根据其具体源站信息填写。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "AK")
private String aK;
/**
* 仅当`Vendor` 非 `URL`时为必填。
*
* Secret Key,与 Access Key 同时填写,为了保证有访问源数据桶的权限。
*
*
*
* - 请参考[云数据迁移准备](https://www.volcengine.com/docs/508/129213)获取对应阿里云OSS、腾讯云COS、七牛云KODO、百度云BOS、华为云OBS、 优刻得(Ucloud File)、AWS国际站的账号 AK/SK。
*
* - 对于其他 S3 协议存储的AK/SK,请根据其具体源站信息填写。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "SK")
private String sK;
/**
* Bucket 所在地区。仅当`Vendor` 非 `URL/OSS/KODO/AWS`时为必填。
*
*
*
* - 请参考[云数据迁移准备](https://www.volcengine.com/docs/508/129213)获取对应阿里云OSS、腾讯云COS、七牛云KODO、百度云BOS、华为云OBS、 优刻得(Ucloud File)、AWS国际站的 Bucket 地区。
*
* - 对于其他 S3 协议存储的 Bucket 地区,请根据其具体源站信息填写。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "Region")
private String region;
/**
* 源端 Bucket。
*
*
*
* - 仅当`Vendor`为`URL`时,需填写 URL 列表文件地址(公网 URL 地址)。
*
* :::tip
*
* 支持指定迁移文件和转码后迁移文件进行重命名,详见 [URL 列表迁移文件说明](https://www.volcengine.com/docs/508/1263268)。
*
* :::
*
* - 当`Vendor`为其他时,请填写对应云服务商所需迁移数据的 Bucket 名称。您可参考[云数据迁移准备](https://www.volcengine.com/docs/508/129213)获取对应阿里云OSS、腾讯云COS、七牛云KODO、百度云BOS、华为云OBS、 优刻得(Ucloud File)、AWS国际站的 Bucket 名称。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "Bucket")
private String bucket;
/**
* 仅当`Vendor`为`S3`时必填。
*
* S3 协议 Endpoint,需以`http://`或`https://`开头。请根据源站信息填写。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "Endpoint")
private String endpoint;
/**
* 仅当`Vendor` 非 `URL`时为可填。
*
* 迁移源云服务商 CDN 域名,若不为空将使用该 CDN 域名下载三方云厂商的资源。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "CdnHost")
private String cdnHost;
/**
* 是否丢弃源 Header。取值如下所示:
*
*
*
* - `true`:丢弃源 Header
*
* - `false`:(默认)保留源 Header
*/
@com.alibaba.fastjson.annotation.JSONField(name = "SkipHeader")
private Boolean skipHeader;
/**
* 仅迁移匹配的前缀列表文件。文件路径前缀无需包含桶名称,但需要完整路径。
*
* 默认为空,表示对该存储 Bucket 内资源执行全量迁移。若不为空,表示仅做部分迁移,即指定迁移的文件路径前缀。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "Prefix")
private List prefix;
/**
* 仅迁移匹配的正则表达式列表的文件。默认为空,表示对该存储 Bucket 内资源执行全量迁移。
*
*
*
* :::tip
*
* - 多条正则表达式之间是"或"的关系,即源文件匹配任何一条正则表达式即视为符合迁移条件。
*
* - 正则过滤规则需要遍历源桶中的全部文件,如果源桶中文件数量较多会降低迁移速度。
*
* :::
*/
@com.alibaba.fastjson.annotation.JSONField(name = "Regex")
private List regex;
/**
* 迁移文件起始时间点。仅迁移该查询时间段内新增或变更的文件。默认为空。
*
* 日期格式按照 ISO8601 表示法,格式为:YYYY-MM-DDThh:mm:ss±hh:mm,比如`2019-06-02T00:00:00+08:00`。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "TimeStart")
private String timeStart;
/**
* 迁移文件结束时间点。默认为空。仅迁移该查询时间段内新增或变更的文件。
*
* 日期格式按照 ISO8601 表示法,格式为:YYYY-MM-DDThh:mm:ss±hh:mm,比如`2019-06-02T00:00:00+08:00`。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "TimeEnd")
private String timeEnd;
@Override
public String toString() {
return JSON.toJSONString(this);
}
}