Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of the License at + * + *
http://www.apache.org/licenses/LICENSE-2.0 + * + *
Unless required by applicable law or agreed to in writing, software distributed under the + * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing permissions and + * limitations under the License. + */ +package cn.ucloud.upfs.client; + +import cn.ucloud.common.client.DefaultClient; +import cn.ucloud.common.config.Config; +import cn.ucloud.common.credential.Credential; +import cn.ucloud.common.exception.UCloudException; +import cn.ucloud.upfs.models.CreateUPFSVolumeRequest; +import cn.ucloud.upfs.models.CreateUPFSVolumeResponse; +import cn.ucloud.upfs.models.DescribeUPFSVolumePriceRequest; +import cn.ucloud.upfs.models.DescribeUPFSVolumePriceResponse; +import cn.ucloud.upfs.models.DescribeUPFSVolumeRequest; +import cn.ucloud.upfs.models.DescribeUPFSVolumeResponse; +import cn.ucloud.upfs.models.DescribeUPFSVolumeUpgradePriceRequest; +import cn.ucloud.upfs.models.DescribeUPFSVolumeUpgradePriceResponse; +import cn.ucloud.upfs.models.ExtendUPFSVolumeRequest; +import cn.ucloud.upfs.models.ExtendUPFSVolumeResponse; +import cn.ucloud.upfs.models.RemoveUPFSVolumeRequest; +import cn.ucloud.upfs.models.RemoveUPFSVolumeResponse; +import cn.ucloud.upfs.models.UpdateUPFSVolumeInfoRequest; +import cn.ucloud.upfs.models.UpdateUPFSVolumeInfoResponse; + +/** This client is used to call actions of **UPFS** service */ +public class UPFSClient extends DefaultClient implements UPFSClientInterface { + public UPFSClient(Config config, Credential credential) { + super(config, credential); + } + + /** + * CreateUPFSVolume - 创建UPFS文件系统 + * + * @param request Request object + * @throws UCloudException Exception + */ + public CreateUPFSVolumeResponse createUPFSVolume(CreateUPFSVolumeRequest request) + throws UCloudException { + request.setAction("CreateUPFSVolume"); + return (CreateUPFSVolumeResponse) this.invoke(request, CreateUPFSVolumeResponse.class); + } + + /** + * DescribeUPFSVolume - 获取UPFS文件系统列表 + * + * @param request Request object + * @throws UCloudException Exception + */ + public DescribeUPFSVolumeResponse describeUPFSVolume(DescribeUPFSVolumeRequest request) + throws UCloudException { + request.setAction("DescribeUPFSVolume"); + return (DescribeUPFSVolumeResponse) this.invoke(request, DescribeUPFSVolumeResponse.class); + } + + /** + * DescribeUPFSVolumePrice - 获取UPFS文件系统价格 + * + * @param request Request object + * @throws UCloudException Exception + */ + public DescribeUPFSVolumePriceResponse describeUPFSVolumePrice( + DescribeUPFSVolumePriceRequest request) throws UCloudException { + request.setAction("DescribeUPFSVolumePrice"); + return (DescribeUPFSVolumePriceResponse) + this.invoke(request, DescribeUPFSVolumePriceResponse.class); + } + + /** + * DescribeUPFSVolumeUpgradePrice - UPFS文件系统扩容价格 + * + * @param request Request object + * @throws UCloudException Exception + */ + public DescribeUPFSVolumeUpgradePriceResponse describeUPFSVolumeUpgradePrice( + DescribeUPFSVolumeUpgradePriceRequest request) throws UCloudException { + request.setAction("DescribeUPFSVolumeUpgradePrice"); + return (DescribeUPFSVolumeUpgradePriceResponse) + this.invoke(request, DescribeUPFSVolumeUpgradePriceResponse.class); + } + + /** + * ExtendUPFSVolume - UPFS文件系统扩容 + * + * @param request Request object + * @throws UCloudException Exception + */ + public ExtendUPFSVolumeResponse extendUPFSVolume(ExtendUPFSVolumeRequest request) + throws UCloudException { + request.setAction("ExtendUPFSVolume"); + return (ExtendUPFSVolumeResponse) this.invoke(request, ExtendUPFSVolumeResponse.class); + } + + /** + * RemoveUPFSVolume - 删除UPFS文件系统 + * + * @param request Request object + * @throws UCloudException Exception + */ + public RemoveUPFSVolumeResponse removeUPFSVolume(RemoveUPFSVolumeRequest request) + throws UCloudException { + request.setAction("RemoveUPFSVolume"); + return (RemoveUPFSVolumeResponse) this.invoke(request, RemoveUPFSVolumeResponse.class); + } + + /** + * UpdateUPFSVolumeInfo - 更改UPFS文件系统相关信息(名称/备注) + * + * @param request Request object + * @throws UCloudException Exception + */ + public UpdateUPFSVolumeInfoResponse updateUPFSVolumeInfo(UpdateUPFSVolumeInfoRequest request) + throws UCloudException { + request.setAction("UpdateUPFSVolumeInfo"); + return (UpdateUPFSVolumeInfoResponse) + this.invoke(request, UpdateUPFSVolumeInfoResponse.class); + } +} diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/client/UPFSClientInterface.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/client/UPFSClientInterface.java new file mode 100644 index 00000000..1c346827 --- /dev/null +++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/client/UPFSClientInterface.java @@ -0,0 +1,98 @@ +/** + * Copyright 2021 UCloud Technology Co., Ltd. + * + *
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of the License at + * + *
http://www.apache.org/licenses/LICENSE-2.0 + * + *
Unless required by applicable law or agreed to in writing, software distributed under the + * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing permissions and + * limitations under the License. + */ +package cn.ucloud.upfs.client; + +import cn.ucloud.common.client.Client; +import cn.ucloud.common.exception.UCloudException; +import cn.ucloud.upfs.models.CreateUPFSVolumeRequest; +import cn.ucloud.upfs.models.CreateUPFSVolumeResponse; +import cn.ucloud.upfs.models.DescribeUPFSVolumePriceRequest; +import cn.ucloud.upfs.models.DescribeUPFSVolumePriceResponse; +import cn.ucloud.upfs.models.DescribeUPFSVolumeRequest; +import cn.ucloud.upfs.models.DescribeUPFSVolumeResponse; +import cn.ucloud.upfs.models.DescribeUPFSVolumeUpgradePriceRequest; +import cn.ucloud.upfs.models.DescribeUPFSVolumeUpgradePriceResponse; +import cn.ucloud.upfs.models.ExtendUPFSVolumeRequest; +import cn.ucloud.upfs.models.ExtendUPFSVolumeResponse; +import cn.ucloud.upfs.models.RemoveUPFSVolumeRequest; +import cn.ucloud.upfs.models.RemoveUPFSVolumeResponse; +import cn.ucloud.upfs.models.UpdateUPFSVolumeInfoRequest; +import cn.ucloud.upfs.models.UpdateUPFSVolumeInfoResponse; + +/** This client is used to call actions of **UPFS** service */ +public interface UPFSClientInterface extends Client { + + /** + * CreateUPFSVolume - 创建UPFS文件系统 + * + * @param request Request object + * @throws UCloudException Exception + */ + public CreateUPFSVolumeResponse createUPFSVolume(CreateUPFSVolumeRequest request) + throws UCloudException; + + /** + * DescribeUPFSVolume - 获取UPFS文件系统列表 + * + * @param request Request object + * @throws UCloudException Exception + */ + public DescribeUPFSVolumeResponse describeUPFSVolume(DescribeUPFSVolumeRequest request) + throws UCloudException; + + /** + * DescribeUPFSVolumePrice - 获取UPFS文件系统价格 + * + * @param request Request object + * @throws UCloudException Exception + */ + public DescribeUPFSVolumePriceResponse describeUPFSVolumePrice( + DescribeUPFSVolumePriceRequest request) throws UCloudException; + + /** + * DescribeUPFSVolumeUpgradePrice - UPFS文件系统扩容价格 + * + * @param request Request object + * @throws UCloudException Exception + */ + public DescribeUPFSVolumeUpgradePriceResponse describeUPFSVolumeUpgradePrice( + DescribeUPFSVolumeUpgradePriceRequest request) throws UCloudException; + + /** + * ExtendUPFSVolume - UPFS文件系统扩容 + * + * @param request Request object + * @throws UCloudException Exception + */ + public ExtendUPFSVolumeResponse extendUPFSVolume(ExtendUPFSVolumeRequest request) + throws UCloudException; + + /** + * RemoveUPFSVolume - 删除UPFS文件系统 + * + * @param request Request object + * @throws UCloudException Exception + */ + public RemoveUPFSVolumeResponse removeUPFSVolume(RemoveUPFSVolumeRequest request) + throws UCloudException; + + /** + * UpdateUPFSVolumeInfo - 更改UPFS文件系统相关信息(名称/备注) + * + * @param request Request object + * @throws UCloudException Exception + */ + public UpdateUPFSVolumeInfoResponse updateUPFSVolumeInfo(UpdateUPFSVolumeInfoRequest request) + throws UCloudException; +} diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/CreateUPFSVolumeRequest.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/CreateUPFSVolumeRequest.java new file mode 100644 index 00000000..e0908411 --- /dev/null +++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/CreateUPFSVolumeRequest.java @@ -0,0 +1,161 @@ +/** + * Copyright 2021 UCloud Technology Co., Ltd. + * + *
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of the License at + * + *
http://www.apache.org/licenses/LICENSE-2.0 + * + *
Unless required by applicable law or agreed to in writing, software distributed under the + * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing permissions and + * limitations under the License. + */ +package cn.ucloud.upfs.models; + + +import cn.ucloud.common.annotation.NotEmpty; +import cn.ucloud.common.annotation.UCloudParam; +import cn.ucloud.common.request.Request; + +public class CreateUPFSVolumeRequest extends Request { + + /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ + @NotEmpty + @UCloudParam("Region") + private String region; + + /** 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ + @NotEmpty + @UCloudParam("Zone") + private String zone; + + /** + * 项目ID。不填写为默认项目,子帐号必须填写。 + * 请参考[GetProjectList接口](https://docs.ucloud.cn/api/summary/get_project_list) + */ + @UCloudParam("ProjectId") + private String projectId; + + /** 文件系统大小,单位为GB,必须为100的整数倍,Size最小为500GB */ + @NotEmpty + @UCloudParam("Size") + private Integer size; + + /** 文件系统协议,目前仅支持POSIX */ + @NotEmpty + @UCloudParam("ProtocolType") + private String protocolType; + + /** 文件系统名称 */ + @UCloudParam("VolumeName") + private String volumeName; + + /** 备注 */ + @UCloudParam("Remark") + private String remark; + + /** 文件系统所属业务组 */ + @UCloudParam("Tag") + private String tag; + + /** 计费模式,枚举值为: Year,按年付费; Month,按月付费 */ + @UCloudParam("ChargeType") + private String chargeType; + + /** 购买时长 默认: 1 */ + @UCloudParam("Quantity") + private Integer quantity; + + /** 使用的代金券id */ + @UCloudParam("CouponId") + private String couponId; + + public String getRegion() { + return region; + } + + public void setRegion(String region) { + this.region = region; + } + + public String getZone() { + return zone; + } + + public void setZone(String zone) { + this.zone = zone; + } + + public String getProjectId() { + return projectId; + } + + public void setProjectId(String projectId) { + this.projectId = projectId; + } + + public Integer getSize() { + return size; + } + + public void setSize(Integer size) { + this.size = size; + } + + public String getProtocolType() { + return protocolType; + } + + public void setProtocolType(String protocolType) { + this.protocolType = protocolType; + } + + public String getVolumeName() { + return volumeName; + } + + public void setVolumeName(String volumeName) { + this.volumeName = volumeName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getTag() { + return tag; + } + + public void setTag(String tag) { + this.tag = tag; + } + + public String getChargeType() { + return chargeType; + } + + public void setChargeType(String chargeType) { + this.chargeType = chargeType; + } + + public Integer getQuantity() { + return quantity; + } + + public void setQuantity(Integer quantity) { + this.quantity = quantity; + } + + public String getCouponId() { + return couponId; + } + + public void setCouponId(String couponId) { + this.couponId = couponId; + } +} diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/CreateUPFSVolumeResponse.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/CreateUPFSVolumeResponse.java new file mode 100644 index 00000000..529386da --- /dev/null +++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/CreateUPFSVolumeResponse.java @@ -0,0 +1,46 @@ +/** + * Copyright 2021 UCloud Technology Co., Ltd. + * + *
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of the License at + * + *
http://www.apache.org/licenses/LICENSE-2.0 + * + *
Unless required by applicable law or agreed to in writing, software distributed under the + * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing permissions and + * limitations under the License. + */ +package cn.ucloud.upfs.models; + + +import cn.ucloud.common.response.Response; + +import com.google.gson.annotations.SerializedName; + +public class CreateUPFSVolumeResponse extends Response { + + /** UPFS文件系统名称 */ + @SerializedName("VolumeName") + private String volumeName; + + /** UPFS文件系统ID */ + @SerializedName("VolumeId") + private String volumeId; + + public String getVolumeName() { + return volumeName; + } + + public void setVolumeName(String volumeName) { + this.volumeName = volumeName; + } + + public String getVolumeId() { + return volumeId; + } + + public void setVolumeId(String volumeId) { + this.volumeId = volumeId; + } +} diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/DescribeUPFSVolumePriceRequest.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/DescribeUPFSVolumePriceRequest.java new file mode 100644 index 00000000..c8340446 --- /dev/null +++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/DescribeUPFSVolumePriceRequest.java @@ -0,0 +1,99 @@ +/** + * Copyright 2021 UCloud Technology Co., Ltd. + * + *
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of the License at + * + *
http://www.apache.org/licenses/LICENSE-2.0 + * + *
Unless required by applicable law or agreed to in writing, software distributed under the + * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing permissions and + * limitations under the License. + */ +package cn.ucloud.upfs.models; + + +import cn.ucloud.common.annotation.NotEmpty; +import cn.ucloud.common.annotation.UCloudParam; +import cn.ucloud.common.request.Request; + +public class DescribeUPFSVolumePriceRequest extends Request { + + /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */ + @NotEmpty + @UCloudParam("Region") + private String region; + + /** + * 项目ID。不填写为默认项目,子帐号必须填写。 + * 请参考[GetProjectList接口](https://docs.ucloud.cn/api/summary/get_project_list) + */ + @UCloudParam("ProjectId") + private String projectId; + + /** 文件系统大小,单位为GB,新架构容量型最小容量为500GB,以100GB递增,最大不超过100TB。 */ + @NotEmpty + @UCloudParam("Size") + private Integer size; + + /** 购买UPFS的时长, 默认为1 */ + @UCloudParam("Quantity") + private Integer quantity; + + /** Year, Month默认: Month */ + @UCloudParam("ChargeType") + private String chargeType; + + /** UPFS文件系统id,第一次创建文件系统时不需要传这个参数 */ + @UCloudParam("VolumeId") + private String volumeId; + + public String getRegion() { + return region; + } + + public void setRegion(String region) { + this.region = region; + } + + public String getProjectId() { + return projectId; + } + + public void setProjectId(String projectId) { + this.projectId = projectId; + } + + public Integer getSize() { + return size; + } + + public void setSize(Integer size) { + this.size = size; + } + + public Integer getQuantity() { + return quantity; + } + + public void setQuantity(Integer quantity) { + this.quantity = quantity; + } + + public String getChargeType() { + return chargeType; + } + + public void setChargeType(String chargeType) { + this.chargeType = chargeType; + } + + public String getVolumeId() { + return volumeId; + } + + public void setVolumeId(String volumeId) { + this.volumeId = volumeId; + } +} diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/DescribeUPFSVolumePriceResponse.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/DescribeUPFSVolumePriceResponse.java new file mode 100644 index 00000000..e9f10343 --- /dev/null +++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/DescribeUPFSVolumePriceResponse.java @@ -0,0 +1,86 @@ +/** + * Copyright 2021 UCloud Technology Co., Ltd. + * + *
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of the License at + * + *
http://www.apache.org/licenses/LICENSE-2.0 + * + *
Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.upfs.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class DescribeUPFSVolumePriceResponse extends Response {
+
+ /** upfs 价格信息 */
+ @SerializedName("DataSet")
+ private List Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.upfs.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DescribeUPFSVolumeRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /** 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @NotEmpty
+ @UCloudParam("Zone")
+ private String zone;
+
+ /**
+ * 项目ID。不填写为默认项目,子帐号必须填写。
+ * 请参考[GetProjectList接口](https://docs.ucloud.cn/api/summary/get_project_list)
+ */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** 文件系统ID */
+ @UCloudParam("VolumeId")
+ private String volumeId;
+
+ /** 文件列表起始 */
+ @UCloudParam("Offset")
+ private Integer offset;
+
+ /** 文件列表长度 */
+ @UCloudParam("Limit")
+ private Integer limit;
+
+ public String getRegion() {
+ return region;
+ }
+
+ public void setRegion(String region) {
+ this.region = region;
+ }
+
+ public String getZone() {
+ return zone;
+ }
+
+ public void setZone(String zone) {
+ this.zone = zone;
+ }
+
+ public String getProjectId() {
+ return projectId;
+ }
+
+ public void setProjectId(String projectId) {
+ this.projectId = projectId;
+ }
+
+ public String getVolumeId() {
+ return volumeId;
+ }
+
+ public void setVolumeId(String volumeId) {
+ this.volumeId = volumeId;
+ }
+
+ public Integer getOffset() {
+ return offset;
+ }
+
+ public void setOffset(Integer offset) {
+ this.offset = offset;
+ }
+
+ public Integer getLimit() {
+ return limit;
+ }
+
+ public void setLimit(Integer limit) {
+ this.limit = limit;
+ }
+}
diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/DescribeUPFSVolumeResponse.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/DescribeUPFSVolumeResponse.java
new file mode 100644
index 00000000..16435421
--- /dev/null
+++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/DescribeUPFSVolumeResponse.java
@@ -0,0 +1,206 @@
+/**
+ * Copyright 2021 UCloud Technology Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.upfs.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class DescribeUPFSVolumeResponse extends Response {
+
+ /** UPFS文件系统总数 */
+ @SerializedName("TotalCount")
+ private Integer totalCount;
+
+ /** UPFS文件系统详细信息列表 */
+ @SerializedName("DataSet")
+ private List Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.upfs.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DescribeUPFSVolumeUpgradePriceRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /**
+ * 项目ID。不填写为默认项目,子帐号必须填写。
+ * 请参考[GetProjectList接口](https://docs.ucloud.cn/api/summary/get_project_list)
+ */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** 文件系统ID */
+ @NotEmpty
+ @UCloudParam("VolumeId")
+ private String volumeId;
+
+ /** 文件系统大小 */
+ @NotEmpty
+ @UCloudParam("Size")
+ private String size;
+
+ public String getRegion() {
+ return region;
+ }
+
+ public void setRegion(String region) {
+ this.region = region;
+ }
+
+ public String getProjectId() {
+ return projectId;
+ }
+
+ public void setProjectId(String projectId) {
+ this.projectId = projectId;
+ }
+
+ public String getVolumeId() {
+ return volumeId;
+ }
+
+ public void setVolumeId(String volumeId) {
+ this.volumeId = volumeId;
+ }
+
+ public String getSize() {
+ return size;
+ }
+
+ public void setSize(String size) {
+ this.size = size;
+ }
+}
diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/DescribeUPFSVolumeUpgradePriceResponse.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/DescribeUPFSVolumeUpgradePriceResponse.java
new file mode 100644
index 00000000..4d7043d5
--- /dev/null
+++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/DescribeUPFSVolumeUpgradePriceResponse.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright 2021 UCloud Technology Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.upfs.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class DescribeUPFSVolumeUpgradePriceResponse extends Response {
+
+ /** 价格(单位:分) */
+ @SerializedName("Price")
+ private Double price;
+
+ /** 原价格(单位:分) */
+ @SerializedName("OriginalPrice")
+ private Double originalPrice;
+
+ public Double getPrice() {
+ return price;
+ }
+
+ public void setPrice(Double price) {
+ this.price = price;
+ }
+
+ public Double getOriginalPrice() {
+ return originalPrice;
+ }
+
+ public void setOriginalPrice(Double originalPrice) {
+ this.originalPrice = originalPrice;
+ }
+}
diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/ExtendUPFSVolumeRequest.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/ExtendUPFSVolumeRequest.java
new file mode 100644
index 00000000..6375cf15
--- /dev/null
+++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/ExtendUPFSVolumeRequest.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright 2021 UCloud Technology Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.upfs.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ExtendUPFSVolumeRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /**
+ * 项目ID。不填写为默认项目,子帐号必须填写。
+ * 请参考[GetProjectList接口](https://docs.ucloud.cn/api/summary/get_project_list)
+ */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** 文件系统ID */
+ @NotEmpty
+ @UCloudParam("VolumeId")
+ private String volumeId;
+
+ /**
+ * 文件系统大小,单位为GB,最大不超过20T,香港容量型必须为100的整数倍,Size最小为500GB,北京,上海,广州的容量型必须为1024的整数倍,Size最小为1024GB。性能型文件系统Size最小为100GB
+ */
+ @NotEmpty
+ @UCloudParam("Size")
+ private Integer size;
+
+ public String getRegion() {
+ return region;
+ }
+
+ public void setRegion(String region) {
+ this.region = region;
+ }
+
+ public String getProjectId() {
+ return projectId;
+ }
+
+ public void setProjectId(String projectId) {
+ this.projectId = projectId;
+ }
+
+ public String getVolumeId() {
+ return volumeId;
+ }
+
+ public void setVolumeId(String volumeId) {
+ this.volumeId = volumeId;
+ }
+
+ public Integer getSize() {
+ return size;
+ }
+
+ public void setSize(Integer size) {
+ this.size = size;
+ }
+}
diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/ExtendUPFSVolumeResponse.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/ExtendUPFSVolumeResponse.java
new file mode 100644
index 00000000..2ddf497c
--- /dev/null
+++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/ExtendUPFSVolumeResponse.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright 2021 UCloud Technology Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.upfs.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class ExtendUPFSVolumeResponse extends Response {}
diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/RemoveUPFSVolumeRequest.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/RemoveUPFSVolumeRequest.java
new file mode 100644
index 00000000..0486d930
--- /dev/null
+++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/RemoveUPFSVolumeRequest.java
@@ -0,0 +1,63 @@
+/**
+ * Copyright 2021 UCloud Technology Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.upfs.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class RemoveUPFSVolumeRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /**
+ * 项目ID。不填写为默认项目,子帐号必须填写。
+ * 请参考[GetProjectList接口](https://docs.ucloud.cn/api/summary/get_project_list)
+ */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** 文件系统ID */
+ @NotEmpty
+ @UCloudParam("VolumeId")
+ private String volumeId;
+
+ public String getRegion() {
+ return region;
+ }
+
+ public void setRegion(String region) {
+ this.region = region;
+ }
+
+ public String getProjectId() {
+ return projectId;
+ }
+
+ public void setProjectId(String projectId) {
+ this.projectId = projectId;
+ }
+
+ public String getVolumeId() {
+ return volumeId;
+ }
+
+ public void setVolumeId(String volumeId) {
+ this.volumeId = volumeId;
+ }
+}
diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/RemoveUPFSVolumeResponse.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/RemoveUPFSVolumeResponse.java
new file mode 100644
index 00000000..3fd6f9b1
--- /dev/null
+++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/RemoveUPFSVolumeResponse.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright 2021 UCloud Technology Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.upfs.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class RemoveUPFSVolumeResponse extends Response {}
diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/UpdateUPFSVolumeInfoRequest.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/UpdateUPFSVolumeInfoRequest.java
new file mode 100644
index 00000000..50e30587
--- /dev/null
+++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/UpdateUPFSVolumeInfoRequest.java
@@ -0,0 +1,87 @@
+/**
+ * Copyright 2021 UCloud Technology Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.upfs.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class UpdateUPFSVolumeInfoRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /**
+ * 项目ID。不填写为默认项目,子帐号必须填写。
+ * 请参考[GetProjectList接口](https://docs.ucloud.cn/api/summary/get_project_list)
+ */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** UPFS文件系统ID */
+ @NotEmpty
+ @UCloudParam("VolumeId")
+ private String volumeId;
+
+ /** UPFS文件系统名称(文件系统名称/备注至少传入其中一个) */
+ @UCloudParam("VolumeName")
+ private String volumeName;
+
+ /** UPFS文件系统备注(文件系统名称/备注至少传入其中一个) */
+ @UCloudParam("Remark")
+ private String remark;
+
+ public String getRegion() {
+ return region;
+ }
+
+ public void setRegion(String region) {
+ this.region = region;
+ }
+
+ public String getProjectId() {
+ return projectId;
+ }
+
+ public void setProjectId(String projectId) {
+ this.projectId = projectId;
+ }
+
+ public String getVolumeId() {
+ return volumeId;
+ }
+
+ public void setVolumeId(String volumeId) {
+ this.volumeId = volumeId;
+ }
+
+ public String getVolumeName() {
+ return volumeName;
+ }
+
+ public void setVolumeName(String volumeName) {
+ this.volumeName = volumeName;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+}
diff --git a/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/UpdateUPFSVolumeInfoResponse.java b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/UpdateUPFSVolumeInfoResponse.java
new file mode 100644
index 00000000..f7dd154b
--- /dev/null
+++ b/ucloud-sdk-java-upfs/src/main/java/cn/ucloud/upfs/models/UpdateUPFSVolumeInfoResponse.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright 2021 UCloud Technology Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.upfs.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class UpdateUPFSVolumeInfoResponse extends Response {}
diff --git a/ucloud-sdk-java-upgsql/pom.xml b/ucloud-sdk-java-upgsql/pom.xml
index cbdf4de3..31d5aa56 100644
--- a/ucloud-sdk-java-upgsql/pom.xml
+++ b/ucloud-sdk-java-upgsql/pom.xml
@@ -5,19 +5,19 @@