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.uclickhouse.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.uclickhouse.models.CreateUClickhouseClusterRequest; +import cn.ucloud.uclickhouse.models.CreateUClickhouseClusterResponse; +import cn.ucloud.uclickhouse.models.DescribeUClickhouseClusterRequest; +import cn.ucloud.uclickhouse.models.DescribeUClickhouseClusterResponse; +import cn.ucloud.uclickhouse.models.DestroyUClickhouseClusterRequest; +import cn.ucloud.uclickhouse.models.DestroyUClickhouseClusterResponse; +import cn.ucloud.uclickhouse.models.ExpandUClickhouseClusterRequest; +import cn.ucloud.uclickhouse.models.ExpandUClickhouseClusterResponse; +import cn.ucloud.uclickhouse.models.GetUClickhouseClusterCreateOptionRequest; +import cn.ucloud.uclickhouse.models.GetUClickhouseClusterCreateOptionResponse; +import cn.ucloud.uclickhouse.models.ListUClickhouseClusterRequest; +import cn.ucloud.uclickhouse.models.ListUClickhouseClusterResponse; +import cn.ucloud.uclickhouse.models.ResizeUClickhouseClusterRequest; +import cn.ucloud.uclickhouse.models.ResizeUClickhouseClusterResponse; +import cn.ucloud.uclickhouse.models.RestartUClickhouseClusterServiceRequest; +import cn.ucloud.uclickhouse.models.RestartUClickhouseClusterServiceResponse; + +/** This client is used to call actions of **UClickhouse** service */ +public class UClickhouseClient extends DefaultClient implements UClickhouseClientInterface { + public UClickhouseClient(Config config, Credential credential) { + super(config, credential); + } + + /** + * CreateUClickhouseCluster - 创建UClickhouse集群 + * + * @param request Request object + * @throws UCloudException Exception + */ + public CreateUClickhouseClusterResponse createUClickhouseCluster( + CreateUClickhouseClusterRequest request) throws UCloudException { + request.setAction("CreateUClickhouseCluster"); + return (CreateUClickhouseClusterResponse) + this.invoke(request, CreateUClickhouseClusterResponse.class); + } + + /** + * DescribeUClickhouseCluster - 获取集群信息 + * + * @param request Request object + * @throws UCloudException Exception + */ + public DescribeUClickhouseClusterResponse describeUClickhouseCluster( + DescribeUClickhouseClusterRequest request) throws UCloudException { + request.setAction("DescribeUClickhouseCluster"); + return (DescribeUClickhouseClusterResponse) + this.invoke(request, DescribeUClickhouseClusterResponse.class); + } + + /** + * DestroyUClickhouseCluster - 删除CK集群 + * + * @param request Request object + * @throws UCloudException Exception + */ + public DestroyUClickhouseClusterResponse destroyUClickhouseCluster( + DestroyUClickhouseClusterRequest request) throws UCloudException { + request.setAction("DestroyUClickhouseCluster"); + return (DestroyUClickhouseClusterResponse) + this.invoke(request, DestroyUClickhouseClusterResponse.class); + } + + /** + * ExpandUClickhouseCluster - 集群水平扩容 + * + * @param request Request object + * @throws UCloudException Exception + */ + public ExpandUClickhouseClusterResponse expandUClickhouseCluster( + ExpandUClickhouseClusterRequest request) throws UCloudException { + request.setAction("ExpandUClickhouseCluster"); + return (ExpandUClickhouseClusterResponse) + this.invoke(request, ExpandUClickhouseClusterResponse.class); + } + + /** + * GetUClickhouseClusterCreateOption - 获取Clickhouse的创建配置项 + * + * @param request Request object + * @throws UCloudException Exception + */ + public GetUClickhouseClusterCreateOptionResponse getUClickhouseClusterCreateOption( + GetUClickhouseClusterCreateOptionRequest request) throws UCloudException { + request.setAction("GetUClickhouseClusterCreateOption"); + return (GetUClickhouseClusterCreateOptionResponse) + this.invoke(request, GetUClickhouseClusterCreateOptionResponse.class); + } + + /** + * ListUClickhouseCluster - 获取UClickhouse集群列表 + * + * @param request Request object + * @throws UCloudException Exception + */ + public ListUClickhouseClusterResponse listUClickhouseCluster( + ListUClickhouseClusterRequest request) throws UCloudException { + request.setAction("ListUClickhouseCluster"); + return (ListUClickhouseClusterResponse) + this.invoke(request, ListUClickhouseClusterResponse.class); + } + + /** + * ResizeUClickhouseCluster - 集群改配 + * + * @param request Request object + * @throws UCloudException Exception + */ + public ResizeUClickhouseClusterResponse resizeUClickhouseCluster( + ResizeUClickhouseClusterRequest request) throws UCloudException { + request.setAction("ResizeUClickhouseCluster"); + return (ResizeUClickhouseClusterResponse) + this.invoke(request, ResizeUClickhouseClusterResponse.class); + } + + /** + * RestartUClickhouseClusterService - 重启集群的UClickhouse服务 + * + * @param request Request object + * @throws UCloudException Exception + */ + public RestartUClickhouseClusterServiceResponse restartUClickhouseClusterService( + RestartUClickhouseClusterServiceRequest request) throws UCloudException { + request.setAction("RestartUClickhouseClusterService"); + return (RestartUClickhouseClusterServiceResponse) + this.invoke(request, RestartUClickhouseClusterServiceResponse.class); + } +} diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/client/UClickhouseClientInterface.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/client/UClickhouseClientInterface.java new file mode 100644 index 00000000..13e62936 --- /dev/null +++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/client/UClickhouseClientInterface.java @@ -0,0 +1,109 @@ +/** + * 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.uclickhouse.client; + +import cn.ucloud.common.client.Client; +import cn.ucloud.common.exception.UCloudException; +import cn.ucloud.uclickhouse.models.CreateUClickhouseClusterRequest; +import cn.ucloud.uclickhouse.models.CreateUClickhouseClusterResponse; +import cn.ucloud.uclickhouse.models.DescribeUClickhouseClusterRequest; +import cn.ucloud.uclickhouse.models.DescribeUClickhouseClusterResponse; +import cn.ucloud.uclickhouse.models.DestroyUClickhouseClusterRequest; +import cn.ucloud.uclickhouse.models.DestroyUClickhouseClusterResponse; +import cn.ucloud.uclickhouse.models.ExpandUClickhouseClusterRequest; +import cn.ucloud.uclickhouse.models.ExpandUClickhouseClusterResponse; +import cn.ucloud.uclickhouse.models.GetUClickhouseClusterCreateOptionRequest; +import cn.ucloud.uclickhouse.models.GetUClickhouseClusterCreateOptionResponse; +import cn.ucloud.uclickhouse.models.ListUClickhouseClusterRequest; +import cn.ucloud.uclickhouse.models.ListUClickhouseClusterResponse; +import cn.ucloud.uclickhouse.models.ResizeUClickhouseClusterRequest; +import cn.ucloud.uclickhouse.models.ResizeUClickhouseClusterResponse; +import cn.ucloud.uclickhouse.models.RestartUClickhouseClusterServiceRequest; +import cn.ucloud.uclickhouse.models.RestartUClickhouseClusterServiceResponse; + +/** This client is used to call actions of **UClickhouse** service */ +public interface UClickhouseClientInterface extends Client { + + /** + * CreateUClickhouseCluster - 创建UClickhouse集群 + * + * @param request Request object + * @throws UCloudException Exception + */ + public CreateUClickhouseClusterResponse createUClickhouseCluster( + CreateUClickhouseClusterRequest request) throws UCloudException; + + /** + * DescribeUClickhouseCluster - 获取集群信息 + * + * @param request Request object + * @throws UCloudException Exception + */ + public DescribeUClickhouseClusterResponse describeUClickhouseCluster( + DescribeUClickhouseClusterRequest request) throws UCloudException; + + /** + * DestroyUClickhouseCluster - 删除CK集群 + * + * @param request Request object + * @throws UCloudException Exception + */ + public DestroyUClickhouseClusterResponse destroyUClickhouseCluster( + DestroyUClickhouseClusterRequest request) throws UCloudException; + + /** + * ExpandUClickhouseCluster - 集群水平扩容 + * + * @param request Request object + * @throws UCloudException Exception + */ + public ExpandUClickhouseClusterResponse expandUClickhouseCluster( + ExpandUClickhouseClusterRequest request) throws UCloudException; + + /** + * GetUClickhouseClusterCreateOption - 获取Clickhouse的创建配置项 + * + * @param request Request object + * @throws UCloudException Exception + */ + public GetUClickhouseClusterCreateOptionResponse getUClickhouseClusterCreateOption( + GetUClickhouseClusterCreateOptionRequest request) throws UCloudException; + + /** + * ListUClickhouseCluster - 获取UClickhouse集群列表 + * + * @param request Request object + * @throws UCloudException Exception + */ + public ListUClickhouseClusterResponse listUClickhouseCluster( + ListUClickhouseClusterRequest request) throws UCloudException; + + /** + * ResizeUClickhouseCluster - 集群改配 + * + * @param request Request object + * @throws UCloudException Exception + */ + public ResizeUClickhouseClusterResponse resizeUClickhouseCluster( + ResizeUClickhouseClusterRequest request) throws UCloudException; + + /** + * RestartUClickhouseClusterService - 重启集群的UClickhouse服务 + * + * @param request Request object + * @throws UCloudException Exception + */ + public RestartUClickhouseClusterServiceResponse restartUClickhouseClusterService( + RestartUClickhouseClusterServiceRequest request) throws UCloudException; +} diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/CreateUClickhouseClusterRequest.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/CreateUClickhouseClusterRequest.java new file mode 100644 index 00000000..10150c9b --- /dev/null +++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/CreateUClickhouseClusterRequest.java @@ -0,0 +1,351 @@ +/** + * 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.uclickhouse.models;
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+import java.util.List;
+
+public class CreateUClickhouseClusterRequest 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;
+
+ /** 集群机型,可通过GetUClickhouseClusterCreateOption接口获取具体值 */
+ @NotEmpty
+ @UCloudParam("ClickhouseMachineTypeId")
+ private String clickhouseMachineTypeId;
+
+ /** 数据盘类型,可通过GetUClickhouseClusterCreateOption接口获取具体值 */
+ @NotEmpty
+ @UCloudParam("DataDiskType")
+ private String dataDiskType;
+
+ /** Clickhouse版本,可通过GetUClickhouseClusterCreateOption接口获取具体版本 */
+ @NotEmpty
+ @UCloudParam("ClickhouseVersion")
+ private String clickhouseVersion;
+
+ /** VPC ID */
+ @NotEmpty
+ @UCloudParam("VPCId")
+ private String vpcId;
+
+ /** 子网ID */
+ @NotEmpty
+ @UCloudParam("SubnetId")
+ private String subnetId;
+
+ /**
+ * 集群管理员密码,密码规则: 1.密码长度限8-32个字符 2.不能包含[A-Z],[a-z],[0-9]和[@#%^*+=_;:,?!&()-]之外的字符
+ * 3.需要同时包含两项或以上(大写字母/小写字母/数字/特殊符号)
+ */
+ @NotEmpty
+ @UCloudParam("AdminPassword")
+ private String adminPassword;
+
+ /** 分片数量,若传递,则至少1个分片,默认值为1 */
+ @UCloudParam("ShardCount")
+ private Integer shardCount;
+
+ /** 副本数量,取值为1或2,1为单副本(非高可用),2为双副本(高可用),默认值为高可用(即为2) */
+ @UCloudParam("ReplicateCount")
+ private Integer replicateCount;
+
+ /** 数据盘大小,最小100,步长为50,默认值为100,单位GB */
+ @UCloudParam("DataDiskSize")
+ private Integer dataDiskSize;
+
+ /** 付费类型,枚举值:Year(年付),Month(月付),Dynamic(时付),默认值为Month,月付 */
+ @UCloudParam("ChargeType")
+ private String chargeType;
+
+ /** 购买时长,默认值为1。月付时,此参数传0,代表购买至月末 */
+ @UCloudParam("Quantity")
+ private Integer quantity;
+
+ /** 备份任务ID,从备份恢复时,该字段必传,此值为备份任务ID,可以从原集群备份任务列表(ListUClickhouseBackups)获取 */
+ @UCloudParam("BackupId")
+ private String backupId;
+
+ /** 实例名称 名称规则: 1.长度为1-50位的字符 2.不能包含_,中文,[A-Z],[a-z],[0-9]之外的非法字符,集群名称默认为clickhouse */
+ @UCloudParam("ClusterName")
+ private String clusterName;
+
+ /** 是否Zookeeper高可用,true为zookeeper高可用,false为非高可用,默认为true,高可用 */
+ @UCloudParam("IsZookeeperHA")
+ private Boolean isZookeeperHA;
+
+ /** 是否开启安全组,true为开启,false为不开启,默认为false,不开启安全组 */
+ @UCloudParam("IsSecGroup")
+ private String isSecGroup;
+
+ /** 是否多可用区,默认为false */
+ @UCloudParam("IsMultiZone")
+ private String isMultiZone;
+
+ /** Zookeeper机型ID,IsZookeeperHA为true时,必传,可通过GetUClickhouseClusterCreateOption接口获取具体值 */
+ @UCloudParam("ZookeeperMachineTypeId")
+ private String zookeeperMachineTypeId;
+
+ /** Zookeeper数据盘类型,IsZookeeperHA为true时,必传,可通过GetUClickhouseClusterCreateOption接口获取具体值 */
+ @UCloudParam("ZookeeperDataDiskType")
+ private String zookeeperDataDiskType;
+
+ /** Zookeeper数据盘大小,IsZookeeperHA为true时,必传,最小100,步长为50 */
+ @UCloudParam("ZookeeperDataDiskSize")
+ private String zookeeperDataDiskSize;
+
+ /** 安全组ID,IsSecGroup为true时,必传 */
+ @UCloudParam("SecGroupIds")
+ private String secGroupIds;
+
+ /** 【数组】可用区名称,IsMultiZone为true时,必传,可通过ListUClickhouseAvailableZone获取支持的可用区 */
+ @UCloudParam("MultiZones")
+ 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.uclickhouse.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class CreateUClickhouseClusterResponse extends Response {
+
+ /** 返回数据 */
+ @SerializedName("Data")
+ private CreateUClickhouseClusterResponseData data;
+
+ public CreateUClickhouseClusterResponseData getData() {
+ return data;
+ }
+
+ public void setData(CreateUClickhouseClusterResponseData data) {
+ this.data = data;
+ }
+
+ public static class CreateUClickhouseClusterResponseData extends Response {
+
+ /** 集群ID */
+ @SerializedName("ClusterId")
+ private String clusterId;
+
+ public String getClusterId() {
+ return clusterId;
+ }
+
+ public void setClusterId(String clusterId) {
+ this.clusterId = clusterId;
+ }
+ }
+}
diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/DescribeUClickhouseClusterRequest.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/DescribeUClickhouseClusterRequest.java
new file mode 100644
index 00000000..13b1ba17
--- /dev/null
+++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/DescribeUClickhouseClusterRequest.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.uclickhouse.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DescribeUClickhouseClusterRequest 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("ClusterId")
+ private String clusterId;
+
+ 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 getClusterId() {
+ return clusterId;
+ }
+
+ public void setClusterId(String clusterId) {
+ this.clusterId = clusterId;
+ }
+}
diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/DescribeUClickhouseClusterResponse.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/DescribeUClickhouseClusterResponse.java
new file mode 100644
index 00000000..552b0eb0
--- /dev/null
+++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/DescribeUClickhouseClusterResponse.java
@@ -0,0 +1,931 @@
+/**
+ * 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.uclickhouse.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class DescribeUClickhouseClusterResponse extends Response {
+
+ /** 返回数据 */
+ @SerializedName("Data")
+ private DescribeUClickhouseClusterResponseData data;
+
+ public DescribeUClickhouseClusterResponseData getData() {
+ return data;
+ }
+
+ public void setData(DescribeUClickhouseClusterResponseData data) {
+ this.data = data;
+ }
+
+ public static class ClickhouseCluster extends Response {
+
+ /** 集群ID */
+ @SerializedName("ClusterId")
+ private String clusterId;
+
+ /** 公司ID */
+ @SerializedName("TopOrganizationId")
+ private Integer topOrganizationId;
+
+ /** 项目ID */
+ @SerializedName("OrganizationId")
+ private Integer organizationId;
+
+ /** 集群名称 */
+ @SerializedName("ClusterName")
+ private String clusterName;
+
+ /** VPCID */
+ @SerializedName("VPCId")
+ private String vpcId;
+
+ /** 子网ID */
+ @SerializedName("SubnetId")
+ private String subnetId;
+
+ /** 集群版本 */
+ @SerializedName("ClickhouseVersion")
+ private String clickhouseVersion;
+
+ /** Zookeeper版本 */
+ @SerializedName("ZookeeperVersion")
+ private String zookeeperVersion;
+
+ /** 机型 */
+ @SerializedName("MachineType")
+ private String machineType;
+
+ /**
+ * 集群状态: CREATING(创建中)、 RUNNING(运行中)、 RESIZING(变配中)、 RESTARTING(重启中)、 UPGRADING(升级中)、
+ * DESTROYING(销毁中)、 DESTROYED(已删除)、 CREATE_FAILED(创建失败)、 RESTART_FAILED(重启失败)、
+ * DESTROY_FAILED(删除失败)、 RESIZE_FAILED(变配失败)、 BACKUP_RESTORING(备份恢复中)、
+ * BACKUP_RESTORE_FAILED(备份恢复失败)、 EXPANDING(扩容中)、 EXPAND_FAILED(扩容失败)
+ */
+ @SerializedName("Status")
+ private String status;
+
+ /** 分片数 */
+ @SerializedName("ShardCount")
+ private Integer shardCount;
+
+ /** 副本数 */
+ @SerializedName("ReplicateCount")
+ private Integer replicateCount;
+
+ /** 集群创建时间 */
+ @SerializedName("CreateTimestamp")
+ private Integer createTimestamp;
+
+ /** Clickhouse机型ID */
+ @SerializedName("ClickhouseMachineTypeId")
+ private String clickhouseMachineTypeId;
+
+ /** Clickhouse机型名称 */
+ @SerializedName("ClickhouseMachineTypeName")
+ private String clickhouseMachineTypeName;
+
+ /** 地域ID */
+ @SerializedName("RegionId")
+ private Integer regionId;
+
+ /** Zookeeper机型ID */
+ @SerializedName("ZookeeperMachineTypeId")
+ private String zookeeperMachineTypeId;
+
+ /** Zookeeper机型名称 */
+ @SerializedName("ZookeeperMachineTypeName")
+ private String zookeeperMachineTypeName;
+
+ /** Clickhouse数据盘类型 */
+ @SerializedName("ClickhouseDataDiskType")
+ private String clickhouseDataDiskType;
+
+ /** Clickhouse数据盘大小 */
+ @SerializedName("ClickhouseDataDiskSize")
+ private Integer clickhouseDataDiskSize;
+
+ /** Zookeeper数据盘类型 */
+ @SerializedName("ZookeeperDataDiskType")
+ private String zookeeperDataDiskType;
+
+ /** Zookeeper数据盘大小 */
+ @SerializedName("ZookeeperDataDiskSize")
+ private Integer zookeeperDataDiskSize;
+
+ /** Clickhouse节点CPU */
+ @SerializedName("ClickhouseNodeCPU")
+ private Integer clickhouseNodeCPU;
+
+ /** Clickhouse内存 */
+ @SerializedName("ClickhouseNodeMemory")
+ private Integer clickhouseNodeMemory;
+
+ /** Zookeeper节点CPU */
+ @SerializedName("ZookeeperNodeCPU")
+ private Integer zookeeperNodeCPU;
+
+ /** Zookeeper节点内存 */
+ @SerializedName("ZookeeperNodeMemory")
+ private Integer zookeeperNodeMemory;
+
+ /** Zookeeper是否高可用 */
+ @SerializedName("IsZookeeperHA")
+ private String isZookeeperHA;
+
+ /** 实例是否开启安全组 */
+ @SerializedName("IsSecgroup")
+ private String isSecgroup;
+
+ /** 实例是否开启备份 */
+ @SerializedName("IsBackup")
+ private String isBackup;
+
+ /** 实例是否开启冷热分层 */
+ @SerializedName("IsTieredStorage")
+ private String isTieredStorage;
+
+ /** 实例所在可用区 */
+ @SerializedName("MultiZones")
+ 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.uclickhouse.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DestroyUClickhouseClusterRequest 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("ClusterId")
+ private String clusterId;
+
+ 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 getClusterId() {
+ return clusterId;
+ }
+
+ public void setClusterId(String clusterId) {
+ this.clusterId = clusterId;
+ }
+}
diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/DestroyUClickhouseClusterResponse.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/DestroyUClickhouseClusterResponse.java
new file mode 100644
index 00000000..d1c09228
--- /dev/null
+++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/DestroyUClickhouseClusterResponse.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.uclickhouse.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class DestroyUClickhouseClusterResponse extends Response {}
diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/ExpandUClickhouseClusterRequest.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/ExpandUClickhouseClusterRequest.java
new file mode 100644
index 00000000..26629c69
--- /dev/null
+++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/ExpandUClickhouseClusterRequest.java
@@ -0,0 +1,88 @@
+/**
+ * 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.uclickhouse.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ExpandUClickhouseClusterRequest 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("ClusterId")
+ private String clusterId;
+
+ /** 扩容后集群的节点数量,集群为高可用时,需要传入偶数个节点 */
+ @NotEmpty
+ @UCloudParam("TotalNodeCount")
+ private Integer totalNodeCount;
+
+ /** 水平扩容时,选择某一个原节点的ID,用于同步表结构/用户信息。不传递时,表示不同步表结构/用户信息,仅水平扩容节点数量 */
+ @UCloudParam("SyncNodeId")
+ private String syncNodeId;
+
+ 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 getClusterId() {
+ return clusterId;
+ }
+
+ public void setClusterId(String clusterId) {
+ this.clusterId = clusterId;
+ }
+
+ public Integer getTotalNodeCount() {
+ return totalNodeCount;
+ }
+
+ public void setTotalNodeCount(Integer totalNodeCount) {
+ this.totalNodeCount = totalNodeCount;
+ }
+
+ public String getSyncNodeId() {
+ return syncNodeId;
+ }
+
+ public void setSyncNodeId(String syncNodeId) {
+ this.syncNodeId = syncNodeId;
+ }
+}
diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/ExpandUClickhouseClusterResponse.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/ExpandUClickhouseClusterResponse.java
new file mode 100644
index 00000000..8ee24ab7
--- /dev/null
+++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/ExpandUClickhouseClusterResponse.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.uclickhouse.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class ExpandUClickhouseClusterResponse extends Response {}
diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/GetUClickhouseClusterCreateOptionRequest.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/GetUClickhouseClusterCreateOptionRequest.java
new file mode 100644
index 00000000..fc32bfbe
--- /dev/null
+++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/GetUClickhouseClusterCreateOptionRequest.java
@@ -0,0 +1,47 @@
+/**
+ * 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.uclickhouse.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class GetUClickhouseClusterCreateOptionRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /** 项目Id */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ 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;
+ }
+}
diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/GetUClickhouseClusterCreateOptionResponse.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/GetUClickhouseClusterCreateOptionResponse.java
new file mode 100644
index 00000000..77a82e5c
--- /dev/null
+++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/GetUClickhouseClusterCreateOptionResponse.java
@@ -0,0 +1,291 @@
+/**
+ * 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.uclickhouse.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class GetUClickhouseClusterCreateOptionResponse extends Response {
+
+ /** 数据 */
+ @SerializedName("Data")
+ private GetCreateUClickhouseClusterOptionResponseData data;
+
+ public GetCreateUClickhouseClusterOptionResponseData getData() {
+ return data;
+ }
+
+ public void setData(GetCreateUClickhouseClusterOptionResponseData data) {
+ this.data = data;
+ }
+
+ public static class ClickhouseDataDisk extends Response {
+
+ /** 磁盘类型 */
+ @SerializedName("DiskType")
+ private String diskType;
+
+ /** 最小值,GB */
+ @SerializedName("MinDiskSize")
+ private Integer minDiskSize;
+
+ /** 最大值,GB */
+ @SerializedName("MaxDiskSize")
+ private Integer maxDiskSize;
+
+ /** 默认大小,GB */
+ @SerializedName("DefaultDataDiskSize")
+ private Integer defaultDataDiskSize;
+
+ /** 步长,GB */
+ @SerializedName("Step")
+ private Integer step;
+
+ public String getDiskType() {
+ return diskType;
+ }
+
+ public void setDiskType(String diskType) {
+ this.diskType = diskType;
+ }
+
+ public Integer getMinDiskSize() {
+ return minDiskSize;
+ }
+
+ public void setMinDiskSize(Integer minDiskSize) {
+ this.minDiskSize = minDiskSize;
+ }
+
+ public Integer getMaxDiskSize() {
+ return maxDiskSize;
+ }
+
+ public void setMaxDiskSize(Integer maxDiskSize) {
+ this.maxDiskSize = maxDiskSize;
+ }
+
+ public Integer getDefaultDataDiskSize() {
+ return defaultDataDiskSize;
+ }
+
+ public void setDefaultDataDiskSize(Integer defaultDataDiskSize) {
+ this.defaultDataDiskSize = defaultDataDiskSize;
+ }
+
+ public Integer getStep() {
+ return step;
+ }
+
+ public void setStep(Integer step) {
+ this.step = step;
+ }
+ }
+
+ public static class ClickhouseMachineType extends Response {
+
+ /** CK机型名称 */
+ @SerializedName("ClickhouseMachineTypeName")
+ private String clickhouseMachineTypeName;
+
+ /** CK机型可选项 */
+ @SerializedName("ClickhouseMachineTypeOptions")
+ 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.uclickhouse.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ListUClickhouseClusterRequest 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;
+
+ 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;
+ }
+}
diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/ListUClickhouseClusterResponse.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/ListUClickhouseClusterResponse.java
new file mode 100644
index 00000000..6e43331e
--- /dev/null
+++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/ListUClickhouseClusterResponse.java
@@ -0,0 +1,454 @@
+/**
+ * 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.uclickhouse.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class ListUClickhouseClusterResponse extends Response {
+
+ /** 返回数据 */
+ @SerializedName("Data")
+ private ListUClickhouseClusterResponseData data;
+
+ public ListUClickhouseClusterResponseData getData() {
+ return data;
+ }
+
+ public void setData(ListUClickhouseClusterResponseData data) {
+ this.data = data;
+ }
+
+ public static class ClickhouseCluster extends Response {
+
+ /** 集群ID */
+ @SerializedName("ClusterId")
+ private String clusterId;
+
+ /** 公司ID */
+ @SerializedName("TopOrganizationId")
+ private Integer topOrganizationId;
+
+ /** 项目ID */
+ @SerializedName("OrganizationId")
+ private Integer organizationId;
+
+ /** 集群名称 */
+ @SerializedName("ClusterName")
+ private String clusterName;
+
+ /** VPCID */
+ @SerializedName("VPCId")
+ private String vpcId;
+
+ /** 子网ID */
+ @SerializedName("SubnetId")
+ private String subnetId;
+
+ /** 集群版本 */
+ @SerializedName("ClickhouseVersion")
+ private String clickhouseVersion;
+
+ /** Zookeeper版本 */
+ @SerializedName("ZookeeperVersion")
+ private String zookeeperVersion;
+
+ /** 机型 */
+ @SerializedName("MachineType")
+ private String machineType;
+
+ /**
+ * 集群状态: CREATING(创建中)、 RUNNING(运行中)、 RESIZING(变配中)、 RESTARTING(重启中)、 UPGRADING(升级中)、
+ * DESTROYING(销毁中)、 DESTROYED(已删除)、 CREATE_FAILED(创建失败)、 RESTART_FAILED(重启失败)、
+ * DESTROY_FAILED(删除失败)、 RESIZE_FAILED(变配失败)、 BACKUP_RESTORING(备份恢复中)、
+ * BACKUP_RESTORE_FAILED(备份恢复失败)、 EXPANDING(扩容中)、 EXPAND_FAILED(扩容失败)
+ */
+ @SerializedName("Status")
+ private String status;
+
+ /** 分片数 */
+ @SerializedName("ShardCount")
+ private Integer shardCount;
+
+ /** 副本数 */
+ @SerializedName("ReplicateCount")
+ private Integer replicateCount;
+
+ /** 集群创建时间 */
+ @SerializedName("CreateTimestamp")
+ private Integer createTimestamp;
+
+ /** Clickhouse机型ID */
+ @SerializedName("ClickhouseMachineTypeId")
+ private String clickhouseMachineTypeId;
+
+ /** Clickhouse机型名称 */
+ @SerializedName("ClickhouseMachineTypeName")
+ private String clickhouseMachineTypeName;
+
+ /** 地域ID */
+ @SerializedName("RegionId")
+ private Integer regionId;
+
+ /** Zookeeper机型ID */
+ @SerializedName("ZookeeperMachineTypeId")
+ private String zookeeperMachineTypeId;
+
+ /** Zookeeper机型名称 */
+ @SerializedName("ZookeeperMachineTypeName")
+ private String zookeeperMachineTypeName;
+
+ /** Clickhouse数据盘类型 */
+ @SerializedName("ClickhouseDataDiskType")
+ private String clickhouseDataDiskType;
+
+ /** Clickhouse数据盘大小 */
+ @SerializedName("ClickhouseDataDiskSize")
+ private Integer clickhouseDataDiskSize;
+
+ /** Zookeeper数据盘类型 */
+ @SerializedName("ZookeeperDataDiskType")
+ private String zookeeperDataDiskType;
+
+ /** Zookeeper数据盘大小 */
+ @SerializedName("ZookeeperDataDiskSize")
+ private Integer zookeeperDataDiskSize;
+
+ /** Clickhouse节点CPU */
+ @SerializedName("ClickhouseNodeCPU")
+ private Integer clickhouseNodeCPU;
+
+ /** Clickhouse内存 */
+ @SerializedName("ClickhouseNodeMemory")
+ private Integer clickhouseNodeMemory;
+
+ /** Zookeeper节点CPU */
+ @SerializedName("ZookeeperNodeCPU")
+ private Integer zookeeperNodeCPU;
+
+ /** Zookeeper节点内存 */
+ @SerializedName("ZookeeperNodeMemory")
+ private Integer zookeeperNodeMemory;
+
+ /** Zookeeper是否高可用 */
+ @SerializedName("IsZookeeperHA")
+ private String isZookeeperHA;
+
+ /** 实例是否开启安全组 */
+ @SerializedName("IsSecgroup")
+ private String isSecgroup;
+
+ /** 实例是否开启备份 */
+ @SerializedName("IsBackup")
+ private String isBackup;
+
+ /** 实例是否开启冷热分层 */
+ @SerializedName("IsTieredStorage")
+ private String isTieredStorage;
+
+ /** 实例所在可用区 */
+ @SerializedName("MultiZones")
+ 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.uclickhouse.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ResizeUClickhouseClusterRequest 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("ClusterId")
+ private String clusterId;
+
+ /** 目标机型ID,可通过GetUClickhouseClusterCreateOption接口获取具体值,与TargetDataDiskSize不能同时为空 */
+ @UCloudParam("TargetMachineTypeId")
+ private String targetMachineTypeId;
+
+ /** 目标磁盘大小,单位GB,只能扩容,与TargetMachineTypeId不能同时为空 */
+ @UCloudParam("TargetDataDiskSize")
+ private Integer targetDataDiskSize;
+
+ /** 是否为zookeeper节点,为true时表示升级zookeeper节点规格,为false时表示升级clickhouse节点规格,默认为false */
+ @UCloudParam("IsZooKeeperNode")
+ private Boolean isZooKeeperNode;
+
+ 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 getClusterId() {
+ return clusterId;
+ }
+
+ public void setClusterId(String clusterId) {
+ this.clusterId = clusterId;
+ }
+
+ public String getTargetMachineTypeId() {
+ return targetMachineTypeId;
+ }
+
+ public void setTargetMachineTypeId(String targetMachineTypeId) {
+ this.targetMachineTypeId = targetMachineTypeId;
+ }
+
+ public Integer getTargetDataDiskSize() {
+ return targetDataDiskSize;
+ }
+
+ public void setTargetDataDiskSize(Integer targetDataDiskSize) {
+ this.targetDataDiskSize = targetDataDiskSize;
+ }
+
+ public Boolean getIsZooKeeperNode() {
+ return isZooKeeperNode;
+ }
+
+ public void setIsZooKeeperNode(Boolean isZooKeeperNode) {
+ this.isZooKeeperNode = isZooKeeperNode;
+ }
+}
diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/ResizeUClickhouseClusterResponse.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/ResizeUClickhouseClusterResponse.java
new file mode 100644
index 00000000..146aa987
--- /dev/null
+++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/ResizeUClickhouseClusterResponse.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.uclickhouse.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class ResizeUClickhouseClusterResponse extends Response {}
diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/RestartUClickhouseClusterServiceRequest.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/RestartUClickhouseClusterServiceRequest.java
new file mode 100644
index 00000000..a1feb380
--- /dev/null
+++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/RestartUClickhouseClusterServiceRequest.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.uclickhouse.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class RestartUClickhouseClusterServiceRequest 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("ClusterId")
+ private String clusterId;
+
+ 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 getClusterId() {
+ return clusterId;
+ }
+
+ public void setClusterId(String clusterId) {
+ this.clusterId = clusterId;
+ }
+}
diff --git a/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/RestartUClickhouseClusterServiceResponse.java b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/RestartUClickhouseClusterServiceResponse.java
new file mode 100644
index 00000000..ddecb406
--- /dev/null
+++ b/ucloud-sdk-java-uclickhouse/src/main/java/cn/ucloud/uclickhouse/models/RestartUClickhouseClusterServiceResponse.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.uclickhouse.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class RestartUClickhouseClusterServiceResponse extends Response {}
diff --git a/ucloud-sdk-java-ucompshare/pom.xml b/ucloud-sdk-java-ucompshare/pom.xml
index 851678fb..18a5212c 100644
--- a/ucloud-sdk-java-ucompshare/pom.xml
+++ b/ucloud-sdk-java-ucompshare/pom.xml
@@ -5,19 +5,19 @@
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.ues.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.ues.models.CreateUESInstanceRequest;
+import cn.ucloud.ues.models.CreateUESInstanceResponse;
+import cn.ucloud.ues.models.DeleteUESInstanceRequest;
+import cn.ucloud.ues.models.DeleteUESInstanceResponse;
+import cn.ucloud.ues.models.DescribeUESInstanceV2Request;
+import cn.ucloud.ues.models.DescribeUESInstanceV2Response;
+import cn.ucloud.ues.models.ExpandUESInstanceRequest;
+import cn.ucloud.ues.models.ExpandUESInstanceResponse;
+import cn.ucloud.ues.models.GetUESAppVersionRequest;
+import cn.ucloud.ues.models.GetUESAppVersionResponse;
+import cn.ucloud.ues.models.GetUESDiskSizeLimitationRequest;
+import cn.ucloud.ues.models.GetUESDiskSizeLimitationResponse;
+import cn.ucloud.ues.models.GetUESNodeConfRequest;
+import cn.ucloud.ues.models.GetUESNodeConfResponse;
+import cn.ucloud.ues.models.ListUESInstanceRequest;
+import cn.ucloud.ues.models.ListUESInstanceResponse;
+import cn.ucloud.ues.models.ResizeUESInstanceRequest;
+import cn.ucloud.ues.models.ResizeUESInstanceResponse;
+import cn.ucloud.ues.models.RestartUESInstanceRequest;
+import cn.ucloud.ues.models.RestartUESInstanceResponse;
+
+/** This client is used to call actions of **UES** service */
+public class UESClient extends DefaultClient implements UESClientInterface {
+ public UESClient(Config config, Credential credential) {
+ super(config, credential);
+ }
+
+ /**
+ * CreateUESInstance - 创建实例
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public CreateUESInstanceResponse createUESInstance(CreateUESInstanceRequest request)
+ throws UCloudException {
+ request.setAction("CreateUESInstance");
+ return (CreateUESInstanceResponse) this.invoke(request, CreateUESInstanceResponse.class);
+ }
+
+ /**
+ * DeleteUESInstance - 删除实例
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DeleteUESInstanceResponse deleteUESInstance(DeleteUESInstanceRequest request)
+ throws UCloudException {
+ request.setAction("DeleteUESInstance");
+ return (DeleteUESInstanceResponse) this.invoke(request, DeleteUESInstanceResponse.class);
+ }
+
+ /**
+ * DescribeUESInstanceV2 - 查询指定实例详细信息
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DescribeUESInstanceV2Response describeUESInstanceV2(DescribeUESInstanceV2Request request)
+ throws UCloudException {
+ request.setAction("DescribeUESInstanceV2");
+ return (DescribeUESInstanceV2Response)
+ this.invoke(request, DescribeUESInstanceV2Response.class);
+ }
+
+ /**
+ * ExpandUESInstance - 扩容实例节点
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ExpandUESInstanceResponse expandUESInstance(ExpandUESInstanceRequest request)
+ throws UCloudException {
+ request.setAction("ExpandUESInstance");
+ return (ExpandUESInstanceResponse) this.invoke(request, ExpandUESInstanceResponse.class);
+ }
+
+ /**
+ * GetUESAppVersion - 获取服务应用版本列表
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public GetUESAppVersionResponse getUESAppVersion(GetUESAppVersionRequest request)
+ throws UCloudException {
+ request.setAction("GetUESAppVersion");
+ return (GetUESAppVersionResponse) this.invoke(request, GetUESAppVersionResponse.class);
+ }
+
+ /**
+ * GetUESDiskSizeLimitation - 获取磁盘容量限制
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public GetUESDiskSizeLimitationResponse getUESDiskSizeLimitation(
+ GetUESDiskSizeLimitationRequest request) throws UCloudException {
+ request.setAction("GetUESDiskSizeLimitation");
+ return (GetUESDiskSizeLimitationResponse)
+ this.invoke(request, GetUESDiskSizeLimitationResponse.class);
+ }
+
+ /**
+ * GetUESNodeConf - 获取节点配置列表
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public GetUESNodeConfResponse getUESNodeConf(GetUESNodeConfRequest request)
+ throws UCloudException {
+ request.setAction("GetUESNodeConf");
+ return (GetUESNodeConfResponse) this.invoke(request, GetUESNodeConfResponse.class);
+ }
+
+ /**
+ * ListUESInstance - 实例列表
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUESInstanceResponse listUESInstance(ListUESInstanceRequest request)
+ throws UCloudException {
+ request.setAction("ListUESInstance");
+ return (ListUESInstanceResponse) this.invoke(request, ListUESInstanceResponse.class);
+ }
+
+ /**
+ * ResizeUESInstance - 改配实例节点配置
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ResizeUESInstanceResponse resizeUESInstance(ResizeUESInstanceRequest request)
+ throws UCloudException {
+ request.setAction("ResizeUESInstance");
+ return (ResizeUESInstanceResponse) this.invoke(request, ResizeUESInstanceResponse.class);
+ }
+
+ /**
+ * RestartUESInstance - 重启实例
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public RestartUESInstanceResponse restartUESInstance(RestartUESInstanceRequest request)
+ throws UCloudException {
+ request.setAction("RestartUESInstance");
+ return (RestartUESInstanceResponse) this.invoke(request, RestartUESInstanceResponse.class);
+ }
+}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/client/UESClientInterface.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/client/UESClientInterface.java
new file mode 100644
index 00000000..46d427b7
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/client/UESClientInterface.java
@@ -0,0 +1,131 @@
+/**
+ * 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.ues.client;
+
+import cn.ucloud.common.client.Client;
+import cn.ucloud.common.exception.UCloudException;
+import cn.ucloud.ues.models.CreateUESInstanceRequest;
+import cn.ucloud.ues.models.CreateUESInstanceResponse;
+import cn.ucloud.ues.models.DeleteUESInstanceRequest;
+import cn.ucloud.ues.models.DeleteUESInstanceResponse;
+import cn.ucloud.ues.models.DescribeUESInstanceV2Request;
+import cn.ucloud.ues.models.DescribeUESInstanceV2Response;
+import cn.ucloud.ues.models.ExpandUESInstanceRequest;
+import cn.ucloud.ues.models.ExpandUESInstanceResponse;
+import cn.ucloud.ues.models.GetUESAppVersionRequest;
+import cn.ucloud.ues.models.GetUESAppVersionResponse;
+import cn.ucloud.ues.models.GetUESDiskSizeLimitationRequest;
+import cn.ucloud.ues.models.GetUESDiskSizeLimitationResponse;
+import cn.ucloud.ues.models.GetUESNodeConfRequest;
+import cn.ucloud.ues.models.GetUESNodeConfResponse;
+import cn.ucloud.ues.models.ListUESInstanceRequest;
+import cn.ucloud.ues.models.ListUESInstanceResponse;
+import cn.ucloud.ues.models.ResizeUESInstanceRequest;
+import cn.ucloud.ues.models.ResizeUESInstanceResponse;
+import cn.ucloud.ues.models.RestartUESInstanceRequest;
+import cn.ucloud.ues.models.RestartUESInstanceResponse;
+
+/** This client is used to call actions of **UES** service */
+public interface UESClientInterface extends Client {
+
+ /**
+ * CreateUESInstance - 创建实例
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public CreateUESInstanceResponse createUESInstance(CreateUESInstanceRequest request)
+ throws UCloudException;
+
+ /**
+ * DeleteUESInstance - 删除实例
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DeleteUESInstanceResponse deleteUESInstance(DeleteUESInstanceRequest request)
+ throws UCloudException;
+
+ /**
+ * DescribeUESInstanceV2 - 查询指定实例详细信息
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DescribeUESInstanceV2Response describeUESInstanceV2(DescribeUESInstanceV2Request request)
+ throws UCloudException;
+
+ /**
+ * ExpandUESInstance - 扩容实例节点
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ExpandUESInstanceResponse expandUESInstance(ExpandUESInstanceRequest request)
+ throws UCloudException;
+
+ /**
+ * GetUESAppVersion - 获取服务应用版本列表
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public GetUESAppVersionResponse getUESAppVersion(GetUESAppVersionRequest request)
+ throws UCloudException;
+
+ /**
+ * GetUESDiskSizeLimitation - 获取磁盘容量限制
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public GetUESDiskSizeLimitationResponse getUESDiskSizeLimitation(
+ GetUESDiskSizeLimitationRequest request) throws UCloudException;
+
+ /**
+ * GetUESNodeConf - 获取节点配置列表
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public GetUESNodeConfResponse getUESNodeConf(GetUESNodeConfRequest request)
+ throws UCloudException;
+
+ /**
+ * ListUESInstance - 实例列表
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUESInstanceResponse listUESInstance(ListUESInstanceRequest request)
+ throws UCloudException;
+
+ /**
+ * ResizeUESInstance - 改配实例节点配置
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ResizeUESInstanceResponse resizeUESInstance(ResizeUESInstanceRequest request)
+ throws UCloudException;
+
+ /**
+ * RestartUESInstance - 重启实例
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public RestartUESInstanceResponse restartUESInstance(RestartUESInstanceRequest request)
+ throws UCloudException;
+}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/CreateUESInstanceRequest.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/CreateUESInstanceRequest.java
new file mode 100644
index 00000000..4d9d7692
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/CreateUESInstanceRequest.java
@@ -0,0 +1,372 @@
+/**
+ * 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.ues.models;
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+import java.util.List;
+
+public class CreateUESInstanceRequest 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;
+
+ /** 实例名称 */
+ @NotEmpty
+ @UCloudParam("InstanceName")
+ private String instanceName;
+
+ /** 节点配置标识, 支持的机型可通过GetUESNodeConf NodeConfList[].NodeConf */
+ @NotEmpty
+ @UCloudParam("NodeConf")
+ private String nodeConf;
+
+ /** VPCID标识 */
+ @NotEmpty
+ @UCloudParam("VPCId")
+ private String vpcId;
+
+ /** 子网ID标识 */
+ @NotEmpty
+ @UCloudParam("SubnetId")
+ private String subnetId;
+
+ /** Kibana节点配置, 支持的机型可通过GetUESNodeConf NodeConfList[].NodeConf */
+ @NotEmpty
+ @UCloudParam("KibanaNodeConf")
+ private String kibanaNodeConf;
+
+ /** Kibana节点磁盘类型 */
+ @NotEmpty
+ @UCloudParam("KibanaNodeDiskConf")
+ private String kibanaNodeDiskConf;
+
+ /** 应用服务版本号,支持的类型通过GetUESAppVersion AppVersionList[].AppVersion */
+ @NotEmpty
+ @UCloudParam("AppVersion")
+ private String appVersion;
+
+ /** 磁盘类型 */
+ @NotEmpty
+ @UCloudParam("NodeDiskConf")
+ private String nodeDiskConf;
+
+ /** 节点个数,默认数目为3 */
+ @UCloudParam("NodeSize")
+ private Integer nodeSize;
+
+ /** 节点磁盘大小,默认为100G */
+ @UCloudParam("NodeDiskSize")
+ private Integer nodeDiskSize;
+
+ /** elasticsearch 服务用户名称,默认为elastic;OpenSearch 服务用户名称,固定为admin */
+ @UCloudParam("ServiceUserName")
+ private String serviceUserName;
+
+ /** 服务用户密码,默认为changeme */
+ @UCloudParam("ServicePasswd")
+ private String servicePasswd;
+
+ /** 应用名称,支持的类型通过GetUESAppVersion AppVersionList[].AppName, 默认为elasticsearch */
+ @UCloudParam("AppName")
+ private String appName;
+
+ /** 备注,默认为空 */
+ @UCloudParam("Remark")
+ private String remark;
+
+ /** 计费类型,默认为Month */
+ @UCloudParam("ChargeType")
+ private String chargeType;
+
+ /** 计费长度,默认为1 */
+ @UCloudParam("Quantity")
+ private Integer quantity;
+
+ /** 主节点类型标示,支持的机型可通过GetUESNodeConf NodeConfList[].NodeConf, 默认为空 */
+ @UCloudParam("MasterConf")
+ private String masterConf;
+
+ /** 业务组ID标识 */
+ @UCloudParam("BusinessId")
+ private String businessId;
+
+ /** Coordinating节点机型配置,, 支持的机型可通过GetUESNodeConf NodeConfList[].NodeConf, 默认为空 */
+ @UCloudParam("CoordinatingNodeConf")
+ private String coordinatingNodeConf;
+
+ /** Coordinating节点数量 */
+ @UCloudParam("CoordinatingNodeSize")
+ private Integer coordinatingNodeSize;
+
+ /** Coordinating节点磁盘类型 */
+ @UCloudParam("CoordinatingNodeDiskConf")
+ private String coordinatingNodeDiskConf;
+
+ /** 是否开启安全组,默认为false */
+ @UCloudParam("IsSecGroup")
+ private Boolean isSecGroup;
+
+ /** 安全组ID,开启安全组必填,至多可以同时绑定5个安全组 */
+ @UCloudParam("SecGroupIds")
+ 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.ues.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class CreateUESInstanceResponse extends Response {
+
+ /** 实例ID */
+ @SerializedName("InstanceId")
+ private String instanceId;
+
+ public String getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/DeleteUESInstanceRequest.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/DeleteUESInstanceRequest.java
new file mode 100644
index 00000000..2078b840
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/DeleteUESInstanceRequest.java
@@ -0,0 +1,76 @@
+/**
+ * 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.ues.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DeleteUESInstanceRequest 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 */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ 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 getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/DeleteUESInstanceResponse.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/DeleteUESInstanceResponse.java
new file mode 100644
index 00000000..643ea8d2
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/DeleteUESInstanceResponse.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.ues.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class DeleteUESInstanceResponse extends Response {}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/DescribeUESInstanceV2Request.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/DescribeUESInstanceV2Request.java
new file mode 100644
index 00000000..a378c4aa
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/DescribeUESInstanceV2Request.java
@@ -0,0 +1,76 @@
+/**
+ * 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.ues.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DescribeUESInstanceV2Request 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 */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ 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 getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/DescribeUESInstanceV2Response.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/DescribeUESInstanceV2Response.java
new file mode 100644
index 00000000..44ce77d2
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/DescribeUESInstanceV2Response.java
@@ -0,0 +1,320 @@
+/**
+ * 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.ues.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class DescribeUESInstanceV2Response extends Response {
+
+ /** 返回结果 */
+ @SerializedName("Result")
+ private ClusterNodeV2Info result;
+
+ public ClusterNodeV2Info getResult() {
+ return result;
+ }
+
+ public void setResult(ClusterNodeV2Info result) {
+ this.result = result;
+ }
+
+ public static class ClusterNodeV2Info extends Response {
+
+ /** */
+ @SerializedName("RequestId")
+ private String requestId;
+
+ /** */
+ @SerializedName("ClusterInfo")
+ private ClusterV2Info clusterInfo;
+
+ /** */
+ @SerializedName("NodeInfoList")
+ 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.ues.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ExpandUESInstanceRequest 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 */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ /** 扩容后对应类型节点的数目 */
+ @NotEmpty
+ @UCloudParam("NodeCount")
+ private Integer nodeCount;
+
+ /** 节点类型(compute、coordinating) */
+ @NotEmpty
+ @UCloudParam("NodeRole")
+ private String nodeRole;
+
+ 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 getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+
+ public Integer getNodeCount() {
+ return nodeCount;
+ }
+
+ public void setNodeCount(Integer nodeCount) {
+ this.nodeCount = nodeCount;
+ }
+
+ public String getNodeRole() {
+ return nodeRole;
+ }
+
+ public void setNodeRole(String nodeRole) {
+ this.nodeRole = nodeRole;
+ }
+}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/ExpandUESInstanceResponse.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/ExpandUESInstanceResponse.java
new file mode 100644
index 00000000..54fcf0a5
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/ExpandUESInstanceResponse.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.ues.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class ExpandUESInstanceResponse extends Response {}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/GetUESAppVersionRequest.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/GetUESAppVersionRequest.java
new file mode 100644
index 00000000..619a4fe5
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/GetUESAppVersionRequest.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.ues.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class GetUESAppVersionRequest 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;
+
+ 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;
+ }
+}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/GetUESAppVersionResponse.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/GetUESAppVersionResponse.java
new file mode 100644
index 00000000..ec5ce721
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/GetUESAppVersionResponse.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.ues.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class GetUESAppVersionResponse extends Response {
+
+ /** 服务应用版本个数 */
+ @SerializedName("TotalCount")
+ private Integer totalCount;
+
+ /** 服务应用版本列表 */
+ @SerializedName("AppVersionList")
+ 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.ues.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class GetUESDiskSizeLimitationRequest 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;
+
+ 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;
+ }
+}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/GetUESDiskSizeLimitationResponse.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/GetUESDiskSizeLimitationResponse.java
new file mode 100644
index 00000000..2cae3800
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/GetUESDiskSizeLimitationResponse.java
@@ -0,0 +1,76 @@
+/**
+ * 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.ues.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class GetUESDiskSizeLimitationResponse extends Response {
+
+ /** 各磁盘类型容量限制列表 */
+ @SerializedName("DiskSizeLimitationSet")
+ 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.ues.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class GetUESNodeConfRequest 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;
+
+ 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;
+ }
+}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/GetUESNodeConfResponse.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/GetUESNodeConfResponse.java
new file mode 100644
index 00000000..656f4370
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/GetUESNodeConfResponse.java
@@ -0,0 +1,122 @@
+/**
+ * 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.ues.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class GetUESNodeConfResponse extends Response {
+
+ /** 所有节点配置信息的个数 */
+ @SerializedName("TotalCount")
+ private Integer totalCount;
+
+ /** 服务节点配置信息列表 */
+ @SerializedName("NodeConfList")
+ 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.ues.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ListUESInstanceRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /** 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @UCloudParam("Zone")
+ private String zone;
+
+ /**
+ * 项目ID。不填写为默认项目,子帐号必须填写。
+ * 请参考[GetProjectList接口](https://docs.ucloud.cn/api/summary/get_project_list)
+ */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** 数据偏移量, 默认为0 */
+ @UCloudParam("Offset")
+ private Integer offset;
+
+ /** 返回数据长度, 默认为30 */
+ @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 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-ues/src/main/java/cn/ucloud/ues/models/ListUESInstanceResponse.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/ListUESInstanceResponse.java
new file mode 100644
index 00000000..2e34352f
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/ListUESInstanceResponse.java
@@ -0,0 +1,314 @@
+/**
+ * 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.ues.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class ListUESInstanceResponse extends Response {
+
+ /** 实例信息列表 */
+ @SerializedName("ClusterSet")
+ 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.ues.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ResizeUESInstanceRequest 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 */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ /** 节点类型(compute、master、coordinating、kibana、dashboard) */
+ @NotEmpty
+ @UCloudParam("NodeRole")
+ private String nodeRole;
+
+ /** 改配节点类型,NodeDiskSize为0,基于NodeRole 进行改配 */
+ @UCloudParam("NodeConf")
+ private String nodeConf;
+
+ /** 改配节点磁盘大小,NodeConf 为空字符串,基于NodeRole 进行改配 */
+ @UCloudParam("NodeDiskSize")
+ private Integer nodeDiskSize;
+
+ /** 进行改配操作是否强制检查集群健康状态,默认为false */
+ @UCloudParam("ForceResizing")
+ private Boolean forceResizing;
+
+ 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 getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+
+ public String getNodeRole() {
+ return nodeRole;
+ }
+
+ public void setNodeRole(String nodeRole) {
+ this.nodeRole = nodeRole;
+ }
+
+ public String getNodeConf() {
+ return nodeConf;
+ }
+
+ public void setNodeConf(String nodeConf) {
+ this.nodeConf = nodeConf;
+ }
+
+ public Integer getNodeDiskSize() {
+ return nodeDiskSize;
+ }
+
+ public void setNodeDiskSize(Integer nodeDiskSize) {
+ this.nodeDiskSize = nodeDiskSize;
+ }
+
+ public Boolean getForceResizing() {
+ return forceResizing;
+ }
+
+ public void setForceResizing(Boolean forceResizing) {
+ this.forceResizing = forceResizing;
+ }
+}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/ResizeUESInstanceResponse.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/ResizeUESInstanceResponse.java
new file mode 100644
index 00000000..409b3c9c
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/ResizeUESInstanceResponse.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.ues.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class ResizeUESInstanceResponse extends Response {}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/RestartUESInstanceRequest.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/RestartUESInstanceRequest.java
new file mode 100644
index 00000000..3652ed41
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/RestartUESInstanceRequest.java
@@ -0,0 +1,76 @@
+/**
+ * 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.ues.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class RestartUESInstanceRequest 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 */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ 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 getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+}
diff --git a/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/RestartUESInstanceResponse.java b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/RestartUESInstanceResponse.java
new file mode 100644
index 00000000..29e9c36a
--- /dev/null
+++ b/ucloud-sdk-java-ues/src/main/java/cn/ucloud/ues/models/RestartUESInstanceResponse.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.ues.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class RestartUESInstanceResponse extends Response {}
diff --git a/ucloud-sdk-java-uewaf/pom.xml b/ucloud-sdk-java-uewaf/pom.xml
index 7964ee5d..689ed97d 100644
--- a/ucloud-sdk-java-uewaf/pom.xml
+++ b/ucloud-sdk-java-uewaf/pom.xml
@@ -5,19 +5,19 @@
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.uhadoop.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.uhadoop.models.AddUHadoopInstanceNodeRequest;
+import cn.ucloud.uhadoop.models.AddUHadoopInstanceNodeResponse;
+import cn.ucloud.uhadoop.models.CreateUHadoopInstanceRequest;
+import cn.ucloud.uhadoop.models.CreateUHadoopInstanceResponse;
+import cn.ucloud.uhadoop.models.DeleteUHadoopInstanceRequest;
+import cn.ucloud.uhadoop.models.DeleteUHadoopInstanceResponse;
+import cn.ucloud.uhadoop.models.DescribeUHadoopInstanceRequest;
+import cn.ucloud.uhadoop.models.DescribeUHadoopInstanceResponse;
+import cn.ucloud.uhadoop.models.GetUHadoopNodeTypeRequest;
+import cn.ucloud.uhadoop.models.GetUHadoopNodeTypeResponse;
+import cn.ucloud.uhadoop.models.ListUHadoopFrameworkAppRequest;
+import cn.ucloud.uhadoop.models.ListUHadoopFrameworkAppResponse;
+import cn.ucloud.uhadoop.models.ListUHadoopInstanceRequest;
+import cn.ucloud.uhadoop.models.ListUHadoopInstanceResponse;
+import cn.ucloud.uhadoop.models.RestartUHadoopServiceRequest;
+import cn.ucloud.uhadoop.models.RestartUHadoopServiceResponse;
+import cn.ucloud.uhadoop.models.UpgradeUHadoopNodeDiskRequest;
+import cn.ucloud.uhadoop.models.UpgradeUHadoopNodeDiskResponse;
+import cn.ucloud.uhadoop.models.UpgradeUHadoopNodeRequest;
+import cn.ucloud.uhadoop.models.UpgradeUHadoopNodeResponse;
+
+/** This client is used to call actions of **UHadoop** service */
+public class UHadoopClient extends DefaultClient implements UHadoopClientInterface {
+ public UHadoopClient(Config config, Credential credential) {
+ super(config, credential);
+ }
+
+ /**
+ * AddUHadoopInstanceNode - 给集群添加节点
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public AddUHadoopInstanceNodeResponse addUHadoopInstanceNode(
+ AddUHadoopInstanceNodeRequest request) throws UCloudException {
+ request.setAction("AddUHadoopInstanceNode");
+ return (AddUHadoopInstanceNodeResponse)
+ this.invoke(request, AddUHadoopInstanceNodeResponse.class);
+ }
+
+ /**
+ * CreateUHadoopInstance - 新建集群
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public CreateUHadoopInstanceResponse createUHadoopInstance(CreateUHadoopInstanceRequest request)
+ throws UCloudException {
+ request.setAction("CreateUHadoopInstance");
+ return (CreateUHadoopInstanceResponse)
+ this.invoke(request, CreateUHadoopInstanceResponse.class);
+ }
+
+ /**
+ * DeleteUHadoopInstance - 删除集群
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DeleteUHadoopInstanceResponse deleteUHadoopInstance(DeleteUHadoopInstanceRequest request)
+ throws UCloudException {
+ request.setAction("DeleteUHadoopInstance");
+ return (DeleteUHadoopInstanceResponse)
+ this.invoke(request, DeleteUHadoopInstanceResponse.class);
+ }
+
+ /**
+ * DescribeUHadoopInstance - 描述集群
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DescribeUHadoopInstanceResponse describeUHadoopInstance(
+ DescribeUHadoopInstanceRequest request) throws UCloudException {
+ request.setAction("DescribeUHadoopInstance");
+ return (DescribeUHadoopInstanceResponse)
+ this.invoke(request, DescribeUHadoopInstanceResponse.class);
+ }
+
+ /**
+ * GetUHadoopNodeType - 获取节点类型信息
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public GetUHadoopNodeTypeResponse getUHadoopNodeType(GetUHadoopNodeTypeRequest request)
+ throws UCloudException {
+ request.setAction("GetUHadoopNodeType");
+ return (GetUHadoopNodeTypeResponse) this.invoke(request, GetUHadoopNodeTypeResponse.class);
+ }
+
+ /**
+ * ListUHadoopFrameworkApp - 列举可选app
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUHadoopFrameworkAppResponse listUHadoopFrameworkApp(
+ ListUHadoopFrameworkAppRequest request) throws UCloudException {
+ request.setAction("ListUHadoopFrameworkApp");
+ return (ListUHadoopFrameworkAppResponse)
+ this.invoke(request, ListUHadoopFrameworkAppResponse.class);
+ }
+
+ /**
+ * ListUHadoopInstance - 列出用户所有的集群
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUHadoopInstanceResponse listUHadoopInstance(ListUHadoopInstanceRequest request)
+ throws UCloudException {
+ request.setAction("ListUHadoopInstance");
+ return (ListUHadoopInstanceResponse)
+ this.invoke(request, ListUHadoopInstanceResponse.class);
+ }
+
+ /**
+ * RestartUHadoopService - 重启集群服务(包含start|stop|restart)
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public RestartUHadoopServiceResponse restartUHadoopService(RestartUHadoopServiceRequest request)
+ throws UCloudException {
+ request.setAction("RestartUHadoopService");
+ return (RestartUHadoopServiceResponse)
+ this.invoke(request, RestartUHadoopServiceResponse.class);
+ }
+
+ /**
+ * UpgradeUHadoopNode - 升级uhadoop节点
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public UpgradeUHadoopNodeResponse upgradeUHadoopNode(UpgradeUHadoopNodeRequest request)
+ throws UCloudException {
+ request.setAction("UpgradeUHadoopNode");
+ return (UpgradeUHadoopNodeResponse) this.invoke(request, UpgradeUHadoopNodeResponse.class);
+ }
+
+ /**
+ * UpgradeUHadoopNodeDisk - 扩容集群节点磁盘
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public UpgradeUHadoopNodeDiskResponse upgradeUHadoopNodeDisk(
+ UpgradeUHadoopNodeDiskRequest request) throws UCloudException {
+ request.setAction("UpgradeUHadoopNodeDisk");
+ return (UpgradeUHadoopNodeDiskResponse)
+ this.invoke(request, UpgradeUHadoopNodeDiskResponse.class);
+ }
+}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/client/UHadoopClientInterface.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/client/UHadoopClientInterface.java
new file mode 100644
index 00000000..3ab455a8
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/client/UHadoopClientInterface.java
@@ -0,0 +1,131 @@
+/**
+ * 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.uhadoop.client;
+
+import cn.ucloud.common.client.Client;
+import cn.ucloud.common.exception.UCloudException;
+import cn.ucloud.uhadoop.models.AddUHadoopInstanceNodeRequest;
+import cn.ucloud.uhadoop.models.AddUHadoopInstanceNodeResponse;
+import cn.ucloud.uhadoop.models.CreateUHadoopInstanceRequest;
+import cn.ucloud.uhadoop.models.CreateUHadoopInstanceResponse;
+import cn.ucloud.uhadoop.models.DeleteUHadoopInstanceRequest;
+import cn.ucloud.uhadoop.models.DeleteUHadoopInstanceResponse;
+import cn.ucloud.uhadoop.models.DescribeUHadoopInstanceRequest;
+import cn.ucloud.uhadoop.models.DescribeUHadoopInstanceResponse;
+import cn.ucloud.uhadoop.models.GetUHadoopNodeTypeRequest;
+import cn.ucloud.uhadoop.models.GetUHadoopNodeTypeResponse;
+import cn.ucloud.uhadoop.models.ListUHadoopFrameworkAppRequest;
+import cn.ucloud.uhadoop.models.ListUHadoopFrameworkAppResponse;
+import cn.ucloud.uhadoop.models.ListUHadoopInstanceRequest;
+import cn.ucloud.uhadoop.models.ListUHadoopInstanceResponse;
+import cn.ucloud.uhadoop.models.RestartUHadoopServiceRequest;
+import cn.ucloud.uhadoop.models.RestartUHadoopServiceResponse;
+import cn.ucloud.uhadoop.models.UpgradeUHadoopNodeDiskRequest;
+import cn.ucloud.uhadoop.models.UpgradeUHadoopNodeDiskResponse;
+import cn.ucloud.uhadoop.models.UpgradeUHadoopNodeRequest;
+import cn.ucloud.uhadoop.models.UpgradeUHadoopNodeResponse;
+
+/** This client is used to call actions of **UHadoop** service */
+public interface UHadoopClientInterface extends Client {
+
+ /**
+ * AddUHadoopInstanceNode - 给集群添加节点
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public AddUHadoopInstanceNodeResponse addUHadoopInstanceNode(
+ AddUHadoopInstanceNodeRequest request) throws UCloudException;
+
+ /**
+ * CreateUHadoopInstance - 新建集群
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public CreateUHadoopInstanceResponse createUHadoopInstance(CreateUHadoopInstanceRequest request)
+ throws UCloudException;
+
+ /**
+ * DeleteUHadoopInstance - 删除集群
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DeleteUHadoopInstanceResponse deleteUHadoopInstance(DeleteUHadoopInstanceRequest request)
+ throws UCloudException;
+
+ /**
+ * DescribeUHadoopInstance - 描述集群
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DescribeUHadoopInstanceResponse describeUHadoopInstance(
+ DescribeUHadoopInstanceRequest request) throws UCloudException;
+
+ /**
+ * GetUHadoopNodeType - 获取节点类型信息
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public GetUHadoopNodeTypeResponse getUHadoopNodeType(GetUHadoopNodeTypeRequest request)
+ throws UCloudException;
+
+ /**
+ * ListUHadoopFrameworkApp - 列举可选app
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUHadoopFrameworkAppResponse listUHadoopFrameworkApp(
+ ListUHadoopFrameworkAppRequest request) throws UCloudException;
+
+ /**
+ * ListUHadoopInstance - 列出用户所有的集群
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUHadoopInstanceResponse listUHadoopInstance(ListUHadoopInstanceRequest request)
+ throws UCloudException;
+
+ /**
+ * RestartUHadoopService - 重启集群服务(包含start|stop|restart)
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public RestartUHadoopServiceResponse restartUHadoopService(RestartUHadoopServiceRequest request)
+ throws UCloudException;
+
+ /**
+ * UpgradeUHadoopNode - 升级uhadoop节点
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public UpgradeUHadoopNodeResponse upgradeUHadoopNode(UpgradeUHadoopNodeRequest request)
+ throws UCloudException;
+
+ /**
+ * UpgradeUHadoopNodeDisk - 扩容集群节点磁盘
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public UpgradeUHadoopNodeDiskResponse upgradeUHadoopNodeDisk(
+ UpgradeUHadoopNodeDiskRequest request) throws UCloudException;
+}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/AddUHadoopInstanceNodeRequest.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/AddUHadoopInstanceNodeRequest.java
new file mode 100644
index 00000000..a21667b6
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/AddUHadoopInstanceNodeRequest.java
@@ -0,0 +1,173 @@
+/**
+ * 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.uhadoop.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class AddUHadoopInstanceNodeRequest 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;
+
+ /** 节点的角色,值为task|core|client之一 */
+ @NotEmpty
+ @UCloudParam("NodeRole")
+ private String nodeRole;
+
+ /** 机型,如:o.hadoop2m.medium, 可从GetUHadoopNodeType接口获取 */
+ @NotEmpty
+ @UCloudParam("NodeType")
+ private String nodeType;
+
+ /** 集群ID */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ /** 数据盘数量,非裸金属机型时必填 */
+ @UCloudParam("DataDiskNum")
+ private String dataDiskNum;
+
+ /** 密码,NodeRole为client时必填 */
+ @UCloudParam("Password")
+ private String password;
+
+ /** 系统盘容量,非裸金属机型必填 */
+ @UCloudParam("BootDiskSize")
+ private String bootDiskSize;
+
+ /** 系统盘类型,非裸金属机型必填,例如:CLOUD_RSSD */
+ @UCloudParam("BootDiskType")
+ private String bootDiskType;
+
+ /** 数据盘容量,非裸金属机型必填 */
+ @UCloudParam("DataDiskSize")
+ private String dataDiskSize;
+
+ /** 数据盘类型,非裸金属机型必填,例如:CLOUD_RSSD */
+ @UCloudParam("DataDiskType")
+ private String dataDiskType;
+
+ /** 节点数量,默认为1 */
+ @UCloudParam("NodeCount")
+ private Integer nodeCount;
+
+ 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 getNodeRole() {
+ return nodeRole;
+ }
+
+ public void setNodeRole(String nodeRole) {
+ this.nodeRole = nodeRole;
+ }
+
+ public String getNodeType() {
+ return nodeType;
+ }
+
+ public void setNodeType(String nodeType) {
+ this.nodeType = nodeType;
+ }
+
+ public String getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+
+ public String getDataDiskNum() {
+ return dataDiskNum;
+ }
+
+ public void setDataDiskNum(String dataDiskNum) {
+ this.dataDiskNum = dataDiskNum;
+ }
+
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+ public String getBootDiskSize() {
+ return bootDiskSize;
+ }
+
+ public void setBootDiskSize(String bootDiskSize) {
+ this.bootDiskSize = bootDiskSize;
+ }
+
+ public String getBootDiskType() {
+ return bootDiskType;
+ }
+
+ public void setBootDiskType(String bootDiskType) {
+ this.bootDiskType = bootDiskType;
+ }
+
+ public String getDataDiskSize() {
+ return dataDiskSize;
+ }
+
+ public void setDataDiskSize(String dataDiskSize) {
+ this.dataDiskSize = dataDiskSize;
+ }
+
+ public String getDataDiskType() {
+ return dataDiskType;
+ }
+
+ public void setDataDiskType(String dataDiskType) {
+ this.dataDiskType = dataDiskType;
+ }
+
+ public Integer getNodeCount() {
+ return nodeCount;
+ }
+
+ public void setNodeCount(Integer nodeCount) {
+ this.nodeCount = nodeCount;
+ }
+}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/AddUHadoopInstanceNodeResponse.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/AddUHadoopInstanceNodeResponse.java
new file mode 100644
index 00000000..c952cf3c
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/AddUHadoopInstanceNodeResponse.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.uhadoop.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class AddUHadoopInstanceNodeResponse extends Response {}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/CreateUHadoopInstanceRequest.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/CreateUHadoopInstanceRequest.java
new file mode 100644
index 00000000..1625af8c
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/CreateUHadoopInstanceRequest.java
@@ -0,0 +1,309 @@
+/**
+ * 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.uhadoop.models;
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+import java.util.List;
+
+public class CreateUHadoopInstanceRequest 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;
+
+ /** 集群机器的登录密码 */
+ @NotEmpty
+ @UCloudParam("Password")
+ private String password;
+
+ /** 版本,例如:3.2.1-udh3.0,通过ListUHadoopFrameworkApp接口获取 */
+ @NotEmpty
+ @UCloudParam("FrameworkVersion")
+ private String frameworkVersion;
+
+ /**
+ * 节点配置,里面包括NodeType(机型),NodeRole(节点类别,值为其中之一:master|core|task),Count(数量),DataDiskType(数据盘类别),DataDiskSize(数据盘大小),DataDiskNum(数据盘数量),BootDiskType(系统盘类型),BootDiskSize(系统盘大小),通过GetUHadoopNodeType接口获取,示例为:
+ * InstanceGroupConfigs.0.NodeType=o.hadoop2m.xlarge InstanceGroupConfigs.0.NodeRole=master
+ * InstanceGroupConfigs.0.Count=2 InstanceGroupConfigs.0.DataDiskType=CLOUD_RSSD
+ * InstanceGroupConfigs.0.DataDiskSize=100 InstanceGroupConfigs.0.DataDiskNum=1
+ * InstanceGroupConfigs.0.BootDiskType=CLOUD_RSSD InstanceGroupConfigs.0.BootDiskSize=50
+ * InstanceGroupConfigs.1.NodeType=o.hadoop2m.xlarge InstanceGroupConfigs.1.NodeRole=core
+ * InstanceGroupConfigs.1.Count=3 InstanceGroupConfigs.1.DataDiskType=CLOUD_RSSD
+ * InstanceGroupConfigs.1.DataDiskSize=200 InstanceGroupConfigs.1.DataDiskNum=1
+ * InstanceGroupConfigs.1.BootDiskType=CLOUD_RSSD InstanceGroupConfigs.1.BootDiskSize=50
+ */
+ @NotEmpty
+ @UCloudParam("InstanceGroupConfigs")
+ 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.uhadoop.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class CreateUHadoopInstanceResponse extends Response {
+
+ /** 实例ID */
+ @SerializedName("InstanceId")
+ private String instanceId;
+
+ public String getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/DeleteUHadoopInstanceRequest.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/DeleteUHadoopInstanceRequest.java
new file mode 100644
index 00000000..3649654a
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/DeleteUHadoopInstanceRequest.java
@@ -0,0 +1,88 @@
+/**
+ * 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.uhadoop.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DeleteUHadoopInstanceRequest 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 */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ /** 是否释放绑定的EIP。true: 解绑EIP后,并释放;其他值或不填:解绑EIP。 */
+ @UCloudParam("ReleaseEIP")
+ private Boolean releaseEIP;
+
+ 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 getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+
+ public Boolean getReleaseEIP() {
+ return releaseEIP;
+ }
+
+ public void setReleaseEIP(Boolean releaseEIP) {
+ this.releaseEIP = releaseEIP;
+ }
+}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/DeleteUHadoopInstanceResponse.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/DeleteUHadoopInstanceResponse.java
new file mode 100644
index 00000000..41e08480
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/DeleteUHadoopInstanceResponse.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.uhadoop.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class DeleteUHadoopInstanceResponse extends Response {}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/DescribeUHadoopInstanceRequest.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/DescribeUHadoopInstanceRequest.java
new file mode 100644
index 00000000..561f7abe
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/DescribeUHadoopInstanceRequest.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.uhadoop.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DescribeUHadoopInstanceRequest 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("InstanceId")
+ private String instanceId;
+
+ /** VPCID */
+ @UCloudParam("VPCId")
+ private String vpcId;
+
+ /** 子网ID */
+ @UCloudParam("SubnetId")
+ private String subnetId;
+
+ 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 getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+
+ public String getVPCId() {
+ return vpcId;
+ }
+
+ public void setVPCId(String vpcId) {
+ this.vpcId = vpcId;
+ }
+
+ public String getSubnetId() {
+ return subnetId;
+ }
+
+ public void setSubnetId(String subnetId) {
+ this.subnetId = subnetId;
+ }
+}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/DescribeUHadoopInstanceResponse.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/DescribeUHadoopInstanceResponse.java
new file mode 100644
index 00000000..1d77067d
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/DescribeUHadoopInstanceResponse.java
@@ -0,0 +1,319 @@
+/**
+ * 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.uhadoop.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class DescribeUHadoopInstanceResponse extends Response {
+
+ /** 集群信息 */
+ @SerializedName("ClusterSet")
+ 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.uhadoop.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class GetUHadoopNodeTypeRequest 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;
+
+ /** 框架版本,例如3.2.1-udh3.0,通过ListUHadoopFrameworkApp接口获取 */
+ @UCloudParam("FrameworkVersion")
+ private String frameworkVersion;
+
+ /** 角色,master|core|task */
+ @UCloudParam("NodeRole")
+ private String nodeRole;
+
+ /** 机型名称 */
+ @UCloudParam("NodeType")
+ private String nodeType;
+
+ /**
+ * 框架,例如Hadoop|MR|HDFS|StarRocks , Hadoop框架包含存储与计算服务, MR集群包含计算服务,
+ * HDFS只包含存储服务,StarRocks为StarRocks集群
+ */
+ @UCloudParam("Framework")
+ private String framework;
+
+ 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 getFrameworkVersion() {
+ return frameworkVersion;
+ }
+
+ public void setFrameworkVersion(String frameworkVersion) {
+ this.frameworkVersion = frameworkVersion;
+ }
+
+ public String getNodeRole() {
+ return nodeRole;
+ }
+
+ public void setNodeRole(String nodeRole) {
+ this.nodeRole = nodeRole;
+ }
+
+ public String getNodeType() {
+ return nodeType;
+ }
+
+ public void setNodeType(String nodeType) {
+ this.nodeType = nodeType;
+ }
+
+ public String getFramework() {
+ return framework;
+ }
+
+ public void setFramework(String framework) {
+ this.framework = framework;
+ }
+}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/GetUHadoopNodeTypeResponse.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/GetUHadoopNodeTypeResponse.java
new file mode 100644
index 00000000..a0e31ca4
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/GetUHadoopNodeTypeResponse.java
@@ -0,0 +1,305 @@
+/**
+ * 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.uhadoop.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class GetUHadoopNodeTypeResponse extends Response {
+
+ /** 类型信息 */
+ @SerializedName("InstanceTypeSet")
+ 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.uhadoop.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ListUHadoopFrameworkAppRequest 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;
+
+ /**
+ * 框架,值为'Hadoop'|'HDFS'|'MR'|'StarRocks'之一,框架,例如Hadoop|MR|HDFS|StarRocks Hadoop框架包含存储与计算服务
+ * MR集群包含计算服务 HDFS只包含存储服务,StarRocks为StarRocks集群
+ */
+ @NotEmpty
+ @UCloudParam("Framework")
+ private String framework;
+
+ /** 实例ID,可选。传的话,过滤出适合此集群的app信息。 */
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ 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 getFramework() {
+ return framework;
+ }
+
+ public void setFramework(String framework) {
+ this.framework = framework;
+ }
+
+ public String getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/ListUHadoopFrameworkAppResponse.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/ListUHadoopFrameworkAppResponse.java
new file mode 100644
index 00000000..78c5f658
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/ListUHadoopFrameworkAppResponse.java
@@ -0,0 +1,76 @@
+/**
+ * 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.uhadoop.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class ListUHadoopFrameworkAppResponse extends Response {
+
+ /** 应用配置详情 */
+ @SerializedName("AppConfigSet")
+ 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.uhadoop.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ListUHadoopInstanceRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /** 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @UCloudParam("Zone")
+ private String zone;
+
+ /**
+ * 项目ID。不填写为默认项目,子帐号必须填写。
+ * 请参考[GetProjectList接口](https://docs.ucloud.cn/api/summary/get_project_list)
+ */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** 获取列表的长度限制,默认值为60 */
+ @UCloudParam("Limit")
+ private Integer limit;
+
+ /** 获取列表的偏移,默认值为0 */
+ @UCloudParam("Offset")
+ private Integer offset;
+
+ 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 getLimit() {
+ return limit;
+ }
+
+ public void setLimit(Integer limit) {
+ this.limit = limit;
+ }
+
+ public Integer getOffset() {
+ return offset;
+ }
+
+ public void setOffset(Integer offset) {
+ this.offset = offset;
+ }
+}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/ListUHadoopInstanceResponse.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/ListUHadoopInstanceResponse.java
new file mode 100644
index 00000000..481e5091
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/ListUHadoopInstanceResponse.java
@@ -0,0 +1,186 @@
+/**
+ * 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.uhadoop.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class ListUHadoopInstanceResponse extends Response {
+
+ /** 集群信息集合 */
+ @SerializedName("ClusterSet")
+ 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.uhadoop.models;
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+import java.util.List;
+
+public class RestartUHadoopServiceRequest 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;
+
+ /** 要操作的服务名。可通过ListUHadoopFrameworkApp接口获取 */
+ @NotEmpty
+ @UCloudParam("ServiceName")
+ private String serviceName;
+
+ /** 实例ID */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ /** 应用版本,ApplicationVersion传参时,表示这次操作是整个应用所有服务。 */
+ @UCloudParam("ApplicationVersion")
+ private String applicationVersion;
+
+ /** 只启动。值为false|true之一,默认false,当OnlyStart和OnlyStop同时置为true,则重启。 */
+ @UCloudParam("OnlyStart")
+ private Boolean onlyStart;
+
+ /** 只停止。值为false|true之一,默认false。当OnlyStart和OnlyStop同时置为true,则重启。 */
+ @UCloudParam("OnlyStop")
+ private Boolean onlyStop;
+
+ /** 要操作的NodeId数组。如果传入,则用于过滤操作哪些Node。 */
+ @UCloudParam("NodeId")
+ 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.uhadoop.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class RestartUHadoopServiceResponse extends Response {
+
+ /** 当前执行状态,running(操作运行中)|success(操作成功)|failed(操作失败)|killed(操作被终止)。 */
+ @SerializedName("State")
+ private String state;
+
+ public String getState() {
+ return state;
+ }
+
+ public void setState(String state) {
+ this.state = state;
+ }
+}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/UpgradeUHadoopNodeDiskRequest.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/UpgradeUHadoopNodeDiskRequest.java
new file mode 100644
index 00000000..260bcb5b
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/UpgradeUHadoopNodeDiskRequest.java
@@ -0,0 +1,127 @@
+/**
+ * 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.uhadoop.models;
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+import java.util.List;
+
+public class UpgradeUHadoopNodeDiskRequest 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;
+
+ /** 节点角色,值为master|core|task之一 */
+ @NotEmpty
+ @UCloudParam("NodeRole")
+ private String nodeRole;
+
+ /** 新的数据盘磁盘大小 */
+ @NotEmpty
+ @UCloudParam("DataDiskSize")
+ private Integer dataDiskSize;
+
+ /** 实例ID */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ /** 节点名称集合,当NodeRole不为master时必填 */
+ @UCloudParam("NodeNames")
+ 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.uhadoop.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class UpgradeUHadoopNodeDiskResponse extends Response {}
diff --git a/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/UpgradeUHadoopNodeRequest.java b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/UpgradeUHadoopNodeRequest.java
new file mode 100644
index 00000000..88864ba0
--- /dev/null
+++ b/ucloud-sdk-java-uhadoop/src/main/java/cn/ucloud/uhadoop/models/UpgradeUHadoopNodeRequest.java
@@ -0,0 +1,115 @@
+/**
+ * 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.uhadoop.models;
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+import java.util.List;
+
+public class UpgradeUHadoopNodeRequest 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;
+
+ /** 节点角色,支持"master"|"core"|"task" */
+ @NotEmpty
+ @UCloudParam("NodeRole")
+ private String nodeRole;
+
+ /** 节点新机型,通过GetUHadoopNodeType接口获取 */
+ @NotEmpty
+ @UCloudParam("NodeType")
+ private String nodeType;
+
+ /** 实例ID */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ /** 节点名称,当NodeRole不为master时必填 */
+ @UCloudParam("NodeNames")
+ 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.uhadoop.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class UpgradeUHadoopNodeResponse extends Response {}
diff --git a/ucloud-sdk-java-uhost/pom.xml b/ucloud-sdk-java-uhost/pom.xml
index 1af98ef5..890b3e87 100644
--- a/ucloud-sdk-java-uhost/pom.xml
+++ b/ucloud-sdk-java-uhost/pom.xml
@@ -5,19 +5,19 @@
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.ukafka.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.ukafka.models.AddUKafkaInstanceNodeRequest;
+import cn.ucloud.ukafka.models.AddUKafkaInstanceNodeResponse;
+import cn.ucloud.ukafka.models.CreateUKafkaInstanceRequest;
+import cn.ucloud.ukafka.models.CreateUKafkaInstanceResponse;
+import cn.ucloud.ukafka.models.DeleteUKafkaInstanceRequest;
+import cn.ucloud.ukafka.models.DeleteUKafkaInstanceResponse;
+import cn.ucloud.ukafka.models.DescribeUKafkaConsumerRequest;
+import cn.ucloud.ukafka.models.DescribeUKafkaConsumerResponse;
+import cn.ucloud.ukafka.models.DescribeUKafkaInstanceRequest;
+import cn.ucloud.ukafka.models.DescribeUKafkaInstanceResponse;
+import cn.ucloud.ukafka.models.GetUKafkaNodeTypeRequest;
+import cn.ucloud.ukafka.models.GetUKafkaNodeTypeResponse;
+import cn.ucloud.ukafka.models.GetUKafkaTopicInfoRequest;
+import cn.ucloud.ukafka.models.GetUKafkaTopicInfoResponse;
+import cn.ucloud.ukafka.models.IsUKafkaTopicNameExistRequest;
+import cn.ucloud.ukafka.models.IsUKafkaTopicNameExistResponse;
+import cn.ucloud.ukafka.models.ListUKafkaConsumersRequest;
+import cn.ucloud.ukafka.models.ListUKafkaConsumersResponse;
+import cn.ucloud.ukafka.models.ListUKafkaFrameworkVersionRequest;
+import cn.ucloud.ukafka.models.ListUKafkaFrameworkVersionResponse;
+import cn.ucloud.ukafka.models.ListUKafkaInstanceRequest;
+import cn.ucloud.ukafka.models.ListUKafkaInstanceResponse;
+import cn.ucloud.ukafka.models.ListUKafkaTopicsRequest;
+import cn.ucloud.ukafka.models.ListUKafkaTopicsResponse;
+import cn.ucloud.ukafka.models.ModifyUKafkaInstanceTypeRequest;
+import cn.ucloud.ukafka.models.ModifyUKafkaInstanceTypeResponse;
+import cn.ucloud.ukafka.models.ResizeUKafkaDiskRequest;
+import cn.ucloud.ukafka.models.ResizeUKafkaDiskResponse;
+
+/** This client is used to call actions of **UKafka** service */
+public class UKafkaClient extends DefaultClient implements UKafkaClientInterface {
+ public UKafkaClient(Config config, Credential credential) {
+ super(config, credential);
+ }
+
+ /**
+ * AddUKafkaInstanceNode - 给实例添加节点
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public AddUKafkaInstanceNodeResponse addUKafkaInstanceNode(AddUKafkaInstanceNodeRequest request)
+ throws UCloudException {
+ request.setAction("AddUKafkaInstanceNode");
+ return (AddUKafkaInstanceNodeResponse)
+ this.invoke(request, AddUKafkaInstanceNodeResponse.class);
+ }
+
+ /**
+ * CreateUKafkaInstance - 创建一个实例
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public CreateUKafkaInstanceResponse createUKafkaInstance(CreateUKafkaInstanceRequest request)
+ throws UCloudException {
+ request.setAction("CreateUKafkaInstance");
+ return (CreateUKafkaInstanceResponse)
+ this.invoke(request, CreateUKafkaInstanceResponse.class);
+ }
+
+ /**
+ * DeleteUKafkaInstance - 删除实例
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DeleteUKafkaInstanceResponse deleteUKafkaInstance(DeleteUKafkaInstanceRequest request)
+ throws UCloudException {
+ request.setAction("DeleteUKafkaInstance");
+ return (DeleteUKafkaInstanceResponse)
+ this.invoke(request, DeleteUKafkaInstanceResponse.class);
+ }
+
+ /**
+ * DescribeUKafkaConsumer - 获取 Kafka 消费组信息
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DescribeUKafkaConsumerResponse describeUKafkaConsumer(
+ DescribeUKafkaConsumerRequest request) throws UCloudException {
+ request.setAction("DescribeUKafkaConsumer");
+ return (DescribeUKafkaConsumerResponse)
+ this.invoke(request, DescribeUKafkaConsumerResponse.class);
+ }
+
+ /**
+ * DescribeUKafkaInstance - 获取整个集群的信息
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DescribeUKafkaInstanceResponse describeUKafkaInstance(
+ DescribeUKafkaInstanceRequest request) throws UCloudException {
+ request.setAction("DescribeUKafkaInstance");
+ return (DescribeUKafkaInstanceResponse)
+ this.invoke(request, DescribeUKafkaInstanceResponse.class);
+ }
+
+ /**
+ * GetUKafkaNodeType - 获取节点机型配置
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public GetUKafkaNodeTypeResponse getUKafkaNodeType(GetUKafkaNodeTypeRequest request)
+ throws UCloudException {
+ request.setAction("GetUKafkaNodeType");
+ return (GetUKafkaNodeTypeResponse) this.invoke(request, GetUKafkaNodeTypeResponse.class);
+ }
+
+ /**
+ * GetUKafkaTopicInfo - 获取 topic 详细信息
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public GetUKafkaTopicInfoResponse getUKafkaTopicInfo(GetUKafkaTopicInfoRequest request)
+ throws UCloudException {
+ request.setAction("GetUKafkaTopicInfo");
+ return (GetUKafkaTopicInfoResponse) this.invoke(request, GetUKafkaTopicInfoResponse.class);
+ }
+
+ /**
+ * IsUKafkaTopicNameExist - 检查topic名称是否已存在
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public IsUKafkaTopicNameExistResponse isUKafkaTopicNameExist(
+ IsUKafkaTopicNameExistRequest request) throws UCloudException {
+ request.setAction("IsUKafkaTopicNameExist");
+ return (IsUKafkaTopicNameExistResponse)
+ this.invoke(request, IsUKafkaTopicNameExistResponse.class);
+ }
+
+ /**
+ * ListUKafkaConsumers - 列出 Kafka 消费组
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUKafkaConsumersResponse listUKafkaConsumers(ListUKafkaConsumersRequest request)
+ throws UCloudException {
+ request.setAction("ListUKafkaConsumers");
+ return (ListUKafkaConsumersResponse)
+ this.invoke(request, ListUKafkaConsumersResponse.class);
+ }
+
+ /**
+ * ListUKafkaFrameworkVersion - 列举ukafka框架版本
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUKafkaFrameworkVersionResponse listUKafkaFrameworkVersion(
+ ListUKafkaFrameworkVersionRequest request) throws UCloudException {
+ request.setAction("ListUKafkaFrameworkVersion");
+ return (ListUKafkaFrameworkVersionResponse)
+ this.invoke(request, ListUKafkaFrameworkVersionResponse.class);
+ }
+
+ /**
+ * ListUKafkaInstance - 列举集群信息
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUKafkaInstanceResponse listUKafkaInstance(ListUKafkaInstanceRequest request)
+ throws UCloudException {
+ request.setAction("ListUKafkaInstance");
+ return (ListUKafkaInstanceResponse) this.invoke(request, ListUKafkaInstanceResponse.class);
+ }
+
+ /**
+ * ListUKafkaTopics - 列出 kafka 集群 topic
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUKafkaTopicsResponse listUKafkaTopics(ListUKafkaTopicsRequest request)
+ throws UCloudException {
+ request.setAction("ListUKafkaTopics");
+ return (ListUKafkaTopicsResponse) this.invoke(request, ListUKafkaTopicsResponse.class);
+ }
+
+ /**
+ * ModifyUKafkaInstanceType - 规格升降级
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ModifyUKafkaInstanceTypeResponse modifyUKafkaInstanceType(
+ ModifyUKafkaInstanceTypeRequest request) throws UCloudException {
+ request.setAction("ModifyUKafkaInstanceType");
+ return (ModifyUKafkaInstanceTypeResponse)
+ this.invoke(request, ModifyUKafkaInstanceTypeResponse.class);
+ }
+
+ /**
+ * ResizeUKafkaDisk - 磁盘扩容
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ResizeUKafkaDiskResponse resizeUKafkaDisk(ResizeUKafkaDiskRequest request)
+ throws UCloudException {
+ request.setAction("ResizeUKafkaDisk");
+ return (ResizeUKafkaDiskResponse) this.invoke(request, ResizeUKafkaDiskResponse.class);
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/client/UKafkaClientInterface.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/client/UKafkaClientInterface.java
new file mode 100644
index 00000000..ae1e6bd0
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/client/UKafkaClientInterface.java
@@ -0,0 +1,175 @@
+/**
+ * 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.ukafka.client;
+
+import cn.ucloud.common.client.Client;
+import cn.ucloud.common.exception.UCloudException;
+import cn.ucloud.ukafka.models.AddUKafkaInstanceNodeRequest;
+import cn.ucloud.ukafka.models.AddUKafkaInstanceNodeResponse;
+import cn.ucloud.ukafka.models.CreateUKafkaInstanceRequest;
+import cn.ucloud.ukafka.models.CreateUKafkaInstanceResponse;
+import cn.ucloud.ukafka.models.DeleteUKafkaInstanceRequest;
+import cn.ucloud.ukafka.models.DeleteUKafkaInstanceResponse;
+import cn.ucloud.ukafka.models.DescribeUKafkaConsumerRequest;
+import cn.ucloud.ukafka.models.DescribeUKafkaConsumerResponse;
+import cn.ucloud.ukafka.models.DescribeUKafkaInstanceRequest;
+import cn.ucloud.ukafka.models.DescribeUKafkaInstanceResponse;
+import cn.ucloud.ukafka.models.GetUKafkaNodeTypeRequest;
+import cn.ucloud.ukafka.models.GetUKafkaNodeTypeResponse;
+import cn.ucloud.ukafka.models.GetUKafkaTopicInfoRequest;
+import cn.ucloud.ukafka.models.GetUKafkaTopicInfoResponse;
+import cn.ucloud.ukafka.models.IsUKafkaTopicNameExistRequest;
+import cn.ucloud.ukafka.models.IsUKafkaTopicNameExistResponse;
+import cn.ucloud.ukafka.models.ListUKafkaConsumersRequest;
+import cn.ucloud.ukafka.models.ListUKafkaConsumersResponse;
+import cn.ucloud.ukafka.models.ListUKafkaFrameworkVersionRequest;
+import cn.ucloud.ukafka.models.ListUKafkaFrameworkVersionResponse;
+import cn.ucloud.ukafka.models.ListUKafkaInstanceRequest;
+import cn.ucloud.ukafka.models.ListUKafkaInstanceResponse;
+import cn.ucloud.ukafka.models.ListUKafkaTopicsRequest;
+import cn.ucloud.ukafka.models.ListUKafkaTopicsResponse;
+import cn.ucloud.ukafka.models.ModifyUKafkaInstanceTypeRequest;
+import cn.ucloud.ukafka.models.ModifyUKafkaInstanceTypeResponse;
+import cn.ucloud.ukafka.models.ResizeUKafkaDiskRequest;
+import cn.ucloud.ukafka.models.ResizeUKafkaDiskResponse;
+
+/** This client is used to call actions of **UKafka** service */
+public interface UKafkaClientInterface extends Client {
+
+ /**
+ * AddUKafkaInstanceNode - 给实例添加节点
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public AddUKafkaInstanceNodeResponse addUKafkaInstanceNode(AddUKafkaInstanceNodeRequest request)
+ throws UCloudException;
+
+ /**
+ * CreateUKafkaInstance - 创建一个实例
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public CreateUKafkaInstanceResponse createUKafkaInstance(CreateUKafkaInstanceRequest request)
+ throws UCloudException;
+
+ /**
+ * DeleteUKafkaInstance - 删除实例
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DeleteUKafkaInstanceResponse deleteUKafkaInstance(DeleteUKafkaInstanceRequest request)
+ throws UCloudException;
+
+ /**
+ * DescribeUKafkaConsumer - 获取 Kafka 消费组信息
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DescribeUKafkaConsumerResponse describeUKafkaConsumer(
+ DescribeUKafkaConsumerRequest request) throws UCloudException;
+
+ /**
+ * DescribeUKafkaInstance - 获取整个集群的信息
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public DescribeUKafkaInstanceResponse describeUKafkaInstance(
+ DescribeUKafkaInstanceRequest request) throws UCloudException;
+
+ /**
+ * GetUKafkaNodeType - 获取节点机型配置
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public GetUKafkaNodeTypeResponse getUKafkaNodeType(GetUKafkaNodeTypeRequest request)
+ throws UCloudException;
+
+ /**
+ * GetUKafkaTopicInfo - 获取 topic 详细信息
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public GetUKafkaTopicInfoResponse getUKafkaTopicInfo(GetUKafkaTopicInfoRequest request)
+ throws UCloudException;
+
+ /**
+ * IsUKafkaTopicNameExist - 检查topic名称是否已存在
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public IsUKafkaTopicNameExistResponse isUKafkaTopicNameExist(
+ IsUKafkaTopicNameExistRequest request) throws UCloudException;
+
+ /**
+ * ListUKafkaConsumers - 列出 Kafka 消费组
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUKafkaConsumersResponse listUKafkaConsumers(ListUKafkaConsumersRequest request)
+ throws UCloudException;
+
+ /**
+ * ListUKafkaFrameworkVersion - 列举ukafka框架版本
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUKafkaFrameworkVersionResponse listUKafkaFrameworkVersion(
+ ListUKafkaFrameworkVersionRequest request) throws UCloudException;
+
+ /**
+ * ListUKafkaInstance - 列举集群信息
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUKafkaInstanceResponse listUKafkaInstance(ListUKafkaInstanceRequest request)
+ throws UCloudException;
+
+ /**
+ * ListUKafkaTopics - 列出 kafka 集群 topic
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ListUKafkaTopicsResponse listUKafkaTopics(ListUKafkaTopicsRequest request)
+ throws UCloudException;
+
+ /**
+ * ModifyUKafkaInstanceType - 规格升降级
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ModifyUKafkaInstanceTypeResponse modifyUKafkaInstanceType(
+ ModifyUKafkaInstanceTypeRequest request) throws UCloudException;
+
+ /**
+ * ResizeUKafkaDisk - 磁盘扩容
+ *
+ * @param request Request object
+ * @throws UCloudException Exception
+ */
+ public ResizeUKafkaDiskResponse resizeUKafkaDisk(ResizeUKafkaDiskRequest request)
+ throws UCloudException;
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/AddUKafkaInstanceNodeRequest.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/AddUKafkaInstanceNodeRequest.java
new file mode 100644
index 00000000..47088550
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/AddUKafkaInstanceNodeRequest.java
@@ -0,0 +1,102 @@
+/**
+ * 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class AddUKafkaInstanceNodeRequest 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 */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ /** 机型,支持的机型可通过GetUKafkaNodeType 接口返回的InstanceTypeSet[].InstanceTypeName */
+ @NotEmpty
+ @UCloudParam("NodeType")
+ private String nodeType;
+
+ /** 新添加节点数量 */
+ @NotEmpty
+ @UCloudParam("NodeCount")
+ private Integer nodeCount;
+
+ 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 getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+
+ public String getNodeType() {
+ return nodeType;
+ }
+
+ public void setNodeType(String nodeType) {
+ this.nodeType = nodeType;
+ }
+
+ public Integer getNodeCount() {
+ return nodeCount;
+ }
+
+ public void setNodeCount(Integer nodeCount) {
+ this.nodeCount = nodeCount;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/AddUKafkaInstanceNodeResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/AddUKafkaInstanceNodeResponse.java
new file mode 100644
index 00000000..9875671a
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/AddUKafkaInstanceNodeResponse.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.ukafka.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class AddUKafkaInstanceNodeResponse extends Response {}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/CreateUKafkaInstanceRequest.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/CreateUKafkaInstanceRequest.java
new file mode 100644
index 00000000..e39b5890
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/CreateUKafkaInstanceRequest.java
@@ -0,0 +1,238 @@
+/**
+ * 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class CreateUKafkaInstanceRequest 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;
+
+ /** kafka版本,支持的版本可通过ListUKafkaFrameworkVersion 接口返回字段的FrameworkVersions获取 */
+ @NotEmpty
+ @UCloudParam("FrameworkVersion")
+ private String frameworkVersion;
+
+ /** VPCID */
+ @NotEmpty
+ @UCloudParam("VPCId")
+ private String vpcId;
+
+ /** 子网 ID */
+ @NotEmpty
+ @UCloudParam("SubnetId")
+ private String subnetId;
+
+ /** 付费方式 */
+ @NotEmpty
+ @UCloudParam("ChargeType")
+ private String chargeType;
+
+ /** 机型,支持的机型可通过GetUKafkaNodeType 接口返回的InstanceTypeSet[].InstanceTypeName */
+ @NotEmpty
+ @UCloudParam("NodeType")
+ private String nodeType;
+
+ /** 数据盘大小。支持范围根据GetUKafkaNodeType 接口返回的InstanceTypeSet[].MaxDiskSize 和MinDiskSize获取 */
+ @NotEmpty
+ @UCloudParam("DiskSize")
+ private Integer diskSize;
+
+ /** 实例名,可自定义 */
+ @NotEmpty
+ @UCloudParam("InstanceName")
+ private String instanceName;
+
+ /** 业务组,默认Default */
+ @UCloudParam("BusinessId")
+ private String businessId;
+
+ /** 实例数量,默认 1 */
+ @UCloudParam("Quantity")
+ private String quantity;
+
+ /** 集群节点数量。默认 3 节点 */
+ @UCloudParam("NodeCount")
+ private Integer nodeCount;
+
+ /** kafka 日志保存时间,支持范围[1,240]。默认 72 小时 */
+ @UCloudParam("LogRetentionHours")
+ private String logRetentionHours;
+
+ /** 磁盘管理方式,支持值:NONE、CLEAN。默认值:NONE */
+ @UCloudParam("DiskControllerType")
+ private String diskControllerType;
+
+ /** 磁盘清理阈值,支持范围[70,90]。DiskControllerType 为CLEAN 时必填。默认值 90 */
+ @UCloudParam("DiskThreshold")
+ private String diskThreshold;
+
+ /** 是否开启安全组,支持"true","false",默认 false */
+ @UCloudParam("IsSecurityEnabled")
+ private String isSecurityEnabled;
+
+ 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 getFrameworkVersion() {
+ return frameworkVersion;
+ }
+
+ public void setFrameworkVersion(String frameworkVersion) {
+ this.frameworkVersion = frameworkVersion;
+ }
+
+ public String getVPCId() {
+ return vpcId;
+ }
+
+ public void setVPCId(String vpcId) {
+ this.vpcId = vpcId;
+ }
+
+ public String getSubnetId() {
+ return subnetId;
+ }
+
+ public void setSubnetId(String subnetId) {
+ this.subnetId = subnetId;
+ }
+
+ public String getChargeType() {
+ return chargeType;
+ }
+
+ public void setChargeType(String chargeType) {
+ this.chargeType = chargeType;
+ }
+
+ public String getNodeType() {
+ return nodeType;
+ }
+
+ public void setNodeType(String nodeType) {
+ this.nodeType = nodeType;
+ }
+
+ public Integer getDiskSize() {
+ return diskSize;
+ }
+
+ public void setDiskSize(Integer diskSize) {
+ this.diskSize = diskSize;
+ }
+
+ public String getInstanceName() {
+ return instanceName;
+ }
+
+ public void setInstanceName(String instanceName) {
+ this.instanceName = instanceName;
+ }
+
+ public String getBusinessId() {
+ return businessId;
+ }
+
+ public void setBusinessId(String businessId) {
+ this.businessId = businessId;
+ }
+
+ public String getQuantity() {
+ return quantity;
+ }
+
+ public void setQuantity(String quantity) {
+ this.quantity = quantity;
+ }
+
+ public Integer getNodeCount() {
+ return nodeCount;
+ }
+
+ public void setNodeCount(Integer nodeCount) {
+ this.nodeCount = nodeCount;
+ }
+
+ public String getLogRetentionHours() {
+ return logRetentionHours;
+ }
+
+ public void setLogRetentionHours(String logRetentionHours) {
+ this.logRetentionHours = logRetentionHours;
+ }
+
+ public String getDiskControllerType() {
+ return diskControllerType;
+ }
+
+ public void setDiskControllerType(String diskControllerType) {
+ this.diskControllerType = diskControllerType;
+ }
+
+ public String getDiskThreshold() {
+ return diskThreshold;
+ }
+
+ public void setDiskThreshold(String diskThreshold) {
+ this.diskThreshold = diskThreshold;
+ }
+
+ public String getIsSecurityEnabled() {
+ return isSecurityEnabled;
+ }
+
+ public void setIsSecurityEnabled(String isSecurityEnabled) {
+ this.isSecurityEnabled = isSecurityEnabled;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/CreateUKafkaInstanceResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/CreateUKafkaInstanceResponse.java
new file mode 100644
index 00000000..73b09524
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/CreateUKafkaInstanceResponse.java
@@ -0,0 +1,34 @@
+/**
+ * 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.ukafka.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class CreateUKafkaInstanceResponse extends Response {
+
+ /** 实例资源 ID */
+ @SerializedName("InstanceId")
+ private String instanceId;
+
+ public String getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DeleteUKafkaInstanceRequest.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DeleteUKafkaInstanceRequest.java
new file mode 100644
index 00000000..849b6d85
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DeleteUKafkaInstanceRequest.java
@@ -0,0 +1,76 @@
+/**
+ * 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DeleteUKafkaInstanceRequest 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 */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ 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 getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DeleteUKafkaInstanceResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DeleteUKafkaInstanceResponse.java
new file mode 100644
index 00000000..c432ae17
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DeleteUKafkaInstanceResponse.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.ukafka.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class DeleteUKafkaInstanceResponse extends Response {}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DescribeUKafkaConsumerRequest.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DescribeUKafkaConsumerRequest.java
new file mode 100644
index 00000000..5da862d4
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DescribeUKafkaConsumerRequest.java
@@ -0,0 +1,102 @@
+/**
+ * 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DescribeUKafkaConsumerRequest 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;
+
+ /** Kafka 集群 ID */
+ @NotEmpty
+ @UCloudParam("ClusterInstanceId")
+ private String clusterInstanceId;
+
+ /** 消费组组名 */
+ @NotEmpty
+ @UCloudParam("ConsumerGroup")
+ private String consumerGroup;
+
+ /** 消费者组类型(同消费者组列表返回的类型值) */
+ @NotEmpty
+ @UCloudParam("Type")
+ private String type;
+
+ 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 getClusterInstanceId() {
+ return clusterInstanceId;
+ }
+
+ public void setClusterInstanceId(String clusterInstanceId) {
+ this.clusterInstanceId = clusterInstanceId;
+ }
+
+ public String getConsumerGroup() {
+ return consumerGroup;
+ }
+
+ public void setConsumerGroup(String consumerGroup) {
+ this.consumerGroup = consumerGroup;
+ }
+
+ public String getType() {
+ return type;
+ }
+
+ public void setType(String type) {
+ this.type = type;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DescribeUKafkaConsumerResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DescribeUKafkaConsumerResponse.java
new file mode 100644
index 00000000..d6e5690d
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DescribeUKafkaConsumerResponse.java
@@ -0,0 +1,58 @@
+/**
+ * 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.ukafka.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class DescribeUKafkaConsumerResponse extends Response {
+
+ /** 消费者组组名 */
+ @SerializedName("GroupName")
+ private String groupName;
+
+ /** 消费者组类型 */
+ @SerializedName("Type")
+ private String type;
+
+ /** 消费者组所订阅 topic 信息 */
+ @SerializedName("Topics")
+ private String topics;
+
+ public String getGroupName() {
+ return groupName;
+ }
+
+ public void setGroupName(String groupName) {
+ this.groupName = groupName;
+ }
+
+ public String getType() {
+ return type;
+ }
+
+ public void setType(String type) {
+ this.type = type;
+ }
+
+ public String getTopics() {
+ return topics;
+ }
+
+ public void setTopics(String topics) {
+ this.topics = topics;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DescribeUKafkaInstanceRequest.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DescribeUKafkaInstanceRequest.java
new file mode 100644
index 00000000..cc2149bd
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DescribeUKafkaInstanceRequest.java
@@ -0,0 +1,76 @@
+/**
+ * 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DescribeUKafkaInstanceRequest 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,可以通过ListUKafkaInstance 接口的ClusterSet. ClusterInstanceId 获取 */
+ @NotEmpty
+ @UCloudParam("ClusterInstanceId")
+ private String clusterInstanceId;
+
+ 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 getClusterInstanceId() {
+ return clusterInstanceId;
+ }
+
+ public void setClusterInstanceId(String clusterInstanceId) {
+ this.clusterInstanceId = clusterInstanceId;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DescribeUKafkaInstanceResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DescribeUKafkaInstanceResponse.java
new file mode 100644
index 00000000..f45768ec
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/DescribeUKafkaInstanceResponse.java
@@ -0,0 +1,744 @@
+/**
+ * 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.ukafka.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class DescribeUKafkaInstanceResponse extends Response {
+
+ /** 集群信息列表 */
+ @SerializedName("ClusterSet")
+ 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class GetUKafkaNodeTypeRequest 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;
+
+ /** 传参时返回指定机型信息,参数为空时返回所有机型信息 */
+ @UCloudParam("NodeType")
+ private String nodeType;
+
+ 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 getNodeType() {
+ return nodeType;
+ }
+
+ public void setNodeType(String nodeType) {
+ this.nodeType = nodeType;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/GetUKafkaNodeTypeResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/GetUKafkaNodeTypeResponse.java
new file mode 100644
index 00000000..98046be5
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/GetUKafkaNodeTypeResponse.java
@@ -0,0 +1,125 @@
+/**
+ * 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.ukafka.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class GetUKafkaNodeTypeResponse extends Response {
+
+ /** 机型信息列表 */
+ @SerializedName("NodeTypeSet")
+ 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class GetUKafkaTopicInfoRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](../summary/regionlist.html) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /** 可用区。参见 [可用区列表](../summary/regionlist.html) */
+ @NotEmpty
+ @UCloudParam("Zone")
+ private String zone;
+
+ /** 项目ID。不填写为默认项目,子帐号必须填写。 请参考[GetProjectList接口](../summary/get_project_list.html) */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** Ukafka 集群 ID */
+ @NotEmpty
+ @UCloudParam("ClusterInstanceId")
+ private String clusterInstanceId;
+
+ /** 指定的 Topic */
+ @NotEmpty
+ @UCloudParam("Topic")
+ private String topic;
+
+ 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 getClusterInstanceId() {
+ return clusterInstanceId;
+ }
+
+ public void setClusterInstanceId(String clusterInstanceId) {
+ this.clusterInstanceId = clusterInstanceId;
+ }
+
+ public String getTopic() {
+ return topic;
+ }
+
+ public void setTopic(String topic) {
+ this.topic = topic;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/GetUKafkaTopicInfoResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/GetUKafkaTopicInfoResponse.java
new file mode 100644
index 00000000..60fe597b
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/GetUKafkaTopicInfoResponse.java
@@ -0,0 +1,232 @@
+/**
+ * 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.ukafka.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class GetUKafkaTopicInfoResponse extends Response {
+
+ /** topic 分区信息 */
+ @SerializedName("Partitions")
+ private Object partitions;
+
+ /** topic 属性 */
+ @SerializedName("TopicProperty")
+ private TopicProperty topicProperty;
+
+ /** topic 消息动态 */
+ @SerializedName("MessageState")
+ private MessageState messageState;
+
+ public Object getPartitions() {
+ return partitions;
+ }
+
+ public void setPartitions(Object partitions) {
+ this.partitions = partitions;
+ }
+
+ public TopicProperty getTopicProperty() {
+ return topicProperty;
+ }
+
+ public void setTopicProperty(TopicProperty topicProperty) {
+ this.topicProperty = topicProperty;
+ }
+
+ public MessageState getMessageState() {
+ return messageState;
+ }
+
+ public void setMessageState(MessageState messageState) {
+ this.messageState = messageState;
+ }
+
+ public static class MessageState extends Response {
+
+ /** topic上次更新时间(时间戳) */
+ @SerializedName("LastUpdateTime")
+ private Integer lastUpdateTime;
+
+ /** topic 每分钟流入消息速率 */
+ @SerializedName("BytesInPerSec")
+ private Double bytesInPerSec;
+
+ /** topic 每分钟流出消息速率 */
+ @SerializedName("BytesOutPerSec")
+ private Double bytesOutPerSec;
+
+ /** topic 每分钟流入消息条数 */
+ @SerializedName("MessagesInPerSec")
+ private Double messagesInPerSec;
+
+ public Integer getLastUpdateTime() {
+ return lastUpdateTime;
+ }
+
+ public void setLastUpdateTime(Integer lastUpdateTime) {
+ this.lastUpdateTime = lastUpdateTime;
+ }
+
+ public Double getBytesInPerSec() {
+ return bytesInPerSec;
+ }
+
+ public void setBytesInPerSec(Double bytesInPerSec) {
+ this.bytesInPerSec = bytesInPerSec;
+ }
+
+ public Double getBytesOutPerSec() {
+ return bytesOutPerSec;
+ }
+
+ public void setBytesOutPerSec(Double bytesOutPerSec) {
+ this.bytesOutPerSec = bytesOutPerSec;
+ }
+
+ public Double getMessagesInPerSec() {
+ return messagesInPerSec;
+ }
+
+ public void setMessagesInPerSec(Double messagesInPerSec) {
+ this.messagesInPerSec = messagesInPerSec;
+ }
+ }
+
+ public static class TopicProperty extends Response {
+
+ /** 副本数量 */
+ @SerializedName("NumOfReplica")
+ private Integer numOfReplica;
+
+ /** 分区数量 */
+ @SerializedName("NumOfPartition")
+ private Integer numOfPartition;
+
+ /** broker 数量 */
+ @SerializedName("NumOfBroker")
+ private Integer numOfBroker;
+
+ /** 占用 broker 数量 */
+ @SerializedName("NumOfOccupyBroker")
+ private Integer numOfOccupyBroker;
+
+ /** 落后副本占比 */
+ @SerializedName("UnderReplicasPer")
+ private Double underReplicasPer;
+
+ /** topic 的 broker 覆盖率 */
+ @SerializedName("BrokerSpreadPer")
+ private Double brokerSpreadPer;
+
+ /** topic 的 broker 倾斜率 */
+ @SerializedName("BrokerSkewedPer")
+ private Double brokerSkewedPer;
+
+ /** 优先副本占有率 */
+ @SerializedName("PreferredReplicasPer")
+ private Double preferredReplicasPer;
+
+ /** topic 的 offset 之和 */
+ @SerializedName("SumOfPartitionOffset")
+ private Integer sumOfPartitionOffset;
+
+ /** topic 的磁盘使用之和 */
+ @SerializedName("SumTopicUsage")
+ private Integer sumTopicUsage;
+
+ public Integer getNumOfReplica() {
+ return numOfReplica;
+ }
+
+ public void setNumOfReplica(Integer numOfReplica) {
+ this.numOfReplica = numOfReplica;
+ }
+
+ public Integer getNumOfPartition() {
+ return numOfPartition;
+ }
+
+ public void setNumOfPartition(Integer numOfPartition) {
+ this.numOfPartition = numOfPartition;
+ }
+
+ public Integer getNumOfBroker() {
+ return numOfBroker;
+ }
+
+ public void setNumOfBroker(Integer numOfBroker) {
+ this.numOfBroker = numOfBroker;
+ }
+
+ public Integer getNumOfOccupyBroker() {
+ return numOfOccupyBroker;
+ }
+
+ public void setNumOfOccupyBroker(Integer numOfOccupyBroker) {
+ this.numOfOccupyBroker = numOfOccupyBroker;
+ }
+
+ public Double getUnderReplicasPer() {
+ return underReplicasPer;
+ }
+
+ public void setUnderReplicasPer(Double underReplicasPer) {
+ this.underReplicasPer = underReplicasPer;
+ }
+
+ public Double getBrokerSpreadPer() {
+ return brokerSpreadPer;
+ }
+
+ public void setBrokerSpreadPer(Double brokerSpreadPer) {
+ this.brokerSpreadPer = brokerSpreadPer;
+ }
+
+ public Double getBrokerSkewedPer() {
+ return brokerSkewedPer;
+ }
+
+ public void setBrokerSkewedPer(Double brokerSkewedPer) {
+ this.brokerSkewedPer = brokerSkewedPer;
+ }
+
+ public Double getPreferredReplicasPer() {
+ return preferredReplicasPer;
+ }
+
+ public void setPreferredReplicasPer(Double preferredReplicasPer) {
+ this.preferredReplicasPer = preferredReplicasPer;
+ }
+
+ public Integer getSumOfPartitionOffset() {
+ return sumOfPartitionOffset;
+ }
+
+ public void setSumOfPartitionOffset(Integer sumOfPartitionOffset) {
+ this.sumOfPartitionOffset = sumOfPartitionOffset;
+ }
+
+ public Integer getSumTopicUsage() {
+ return sumTopicUsage;
+ }
+
+ public void setSumTopicUsage(Integer sumTopicUsage) {
+ this.sumTopicUsage = sumTopicUsage;
+ }
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/IsUKafkaTopicNameExistRequest.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/IsUKafkaTopicNameExistRequest.java
new file mode 100644
index 00000000..430b702c
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/IsUKafkaTopicNameExistRequest.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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class IsUKafkaTopicNameExistRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](../summary/regionlist.html) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /** 可用区。参见 [可用区列表](../summary/regionlist.html) */
+ @NotEmpty
+ @UCloudParam("Zone")
+ private String zone;
+
+ /** 项目ID。不填写为默认项目,子帐号必须填写。 请参考[GetProjectList接口](../summary/get_project_list.html) */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** 集群ID */
+ @NotEmpty
+ @UCloudParam("ClusterInstanceId")
+ private String clusterInstanceId;
+
+ /** 待检查的topic名称 */
+ @NotEmpty
+ @UCloudParam("TopicName")
+ private String topicName;
+
+ 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 getClusterInstanceId() {
+ return clusterInstanceId;
+ }
+
+ public void setClusterInstanceId(String clusterInstanceId) {
+ this.clusterInstanceId = clusterInstanceId;
+ }
+
+ public String getTopicName() {
+ return topicName;
+ }
+
+ public void setTopicName(String topicName) {
+ this.topicName = topicName;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/IsUKafkaTopicNameExistResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/IsUKafkaTopicNameExistResponse.java
new file mode 100644
index 00000000..76532d88
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/IsUKafkaTopicNameExistResponse.java
@@ -0,0 +1,34 @@
+/**
+ * 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.ukafka.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class IsUKafkaTopicNameExistResponse extends Response {
+
+ /** 是否已经存在 */
+ @SerializedName("IsExist")
+ private String isExist;
+
+ public String getIsExist() {
+ return isExist;
+ }
+
+ public void setIsExist(String isExist) {
+ this.isExist = isExist;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaConsumersRequest.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaConsumersRequest.java
new file mode 100644
index 00000000..f3d828bd
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaConsumersRequest.java
@@ -0,0 +1,73 @@
+/**
+ * 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ListUKafkaConsumersRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](../summary/regionlist.html) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /** 可用区。参见 [可用区列表](../summary/regionlist.html) */
+ @NotEmpty
+ @UCloudParam("Zone")
+ private String zone;
+
+ /** 项目 ID。不填写为默认项目,子帐号必须填写。 请参考 [GetProjectList 接口](../summary/get_project_list.html) */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** Kafka 集群 ID */
+ @NotEmpty
+ @UCloudParam("ClusterInstanceId")
+ private String clusterInstanceId;
+
+ 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 getClusterInstanceId() {
+ return clusterInstanceId;
+ }
+
+ public void setClusterInstanceId(String clusterInstanceId) {
+ this.clusterInstanceId = clusterInstanceId;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaConsumersResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaConsumersResponse.java
new file mode 100644
index 00000000..dcd5fc70
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaConsumersResponse.java
@@ -0,0 +1,74 @@
+/**
+ * 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.ukafka.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class ListUKafkaConsumersResponse extends Response {
+
+ /** 消费者组列表 */
+ @SerializedName("Groups")
+ 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ListUKafkaFrameworkVersionRequest 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;
+
+ 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;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaFrameworkVersionResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaFrameworkVersionResponse.java
new file mode 100644
index 00000000..0cf9df5c
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaFrameworkVersionResponse.java
@@ -0,0 +1,62 @@
+/**
+ * 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.ukafka.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class ListUKafkaFrameworkVersionResponse extends Response {
+
+ /** kafka版本 */
+ @SerializedName("FrameworkVersions")
+ 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ListUKafkaInstanceRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /** 可用区。参见 [可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @UCloudParam("Zone")
+ private String zone;
+
+ /**
+ * 项目ID。不填写为默认项目,子帐号必须填写。
+ * 请参考[GetProjectList接口](https://docs.ucloud.cn/api/summary/get_project_list)
+ */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** 默认为60 */
+ @UCloudParam("Limit")
+ private String limit;
+
+ /** 默认为0 */
+ @UCloudParam("Offset")
+ private String offset;
+
+ /** 是否过滤删除了的节点,默认为‘true’ */
+ @UCloudParam("Filter")
+ private String filter;
+
+ /** VPCId */
+ @UCloudParam("VPCId")
+ private String vpcId;
+
+ /** SubnetId */
+ @UCloudParam("SubnetId")
+ private String subnetId;
+
+ /** 业务组 ID */
+ @UCloudParam("BusinessId")
+ private String businessId;
+
+ /** 实例ID */
+ @UCloudParam("ClusterInstanceId")
+ private String clusterInstanceId;
+
+ 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 getLimit() {
+ return limit;
+ }
+
+ public void setLimit(String limit) {
+ this.limit = limit;
+ }
+
+ public String getOffset() {
+ return offset;
+ }
+
+ public void setOffset(String offset) {
+ this.offset = offset;
+ }
+
+ public String getFilter() {
+ return filter;
+ }
+
+ public void setFilter(String filter) {
+ this.filter = filter;
+ }
+
+ public String getVPCId() {
+ return vpcId;
+ }
+
+ public void setVPCId(String vpcId) {
+ this.vpcId = vpcId;
+ }
+
+ public String getSubnetId() {
+ return subnetId;
+ }
+
+ public void setSubnetId(String subnetId) {
+ this.subnetId = subnetId;
+ }
+
+ public String getBusinessId() {
+ return businessId;
+ }
+
+ public void setBusinessId(String businessId) {
+ this.businessId = businessId;
+ }
+
+ public String getClusterInstanceId() {
+ return clusterInstanceId;
+ }
+
+ public void setClusterInstanceId(String clusterInstanceId) {
+ this.clusterInstanceId = clusterInstanceId;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaInstanceResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaInstanceResponse.java
new file mode 100644
index 00000000..63bca83d
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaInstanceResponse.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.ukafka.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class ListUKafkaInstanceResponse extends Response {
+
+ /** 信息 */
+ @SerializedName("ClusterSet")
+ private String clusterSet;
+
+ /** 总数 */
+ @SerializedName("TotalCount")
+ private String totalCount;
+
+ public String getClusterSet() {
+ return clusterSet;
+ }
+
+ public void setClusterSet(String clusterSet) {
+ this.clusterSet = clusterSet;
+ }
+
+ public String getTotalCount() {
+ return totalCount;
+ }
+
+ public void setTotalCount(String totalCount) {
+ this.totalCount = totalCount;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaTopicsRequest.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaTopicsRequest.java
new file mode 100644
index 00000000..e2288e18
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaTopicsRequest.java
@@ -0,0 +1,73 @@
+/**
+ * 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ListUKafkaTopicsRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](../summary/regionlist.html) */
+ @NotEmpty
+ @UCloudParam("Region")
+ private String region;
+
+ /** 可用区。参见 [可用区列表](../summary/regionlist.html) */
+ @NotEmpty
+ @UCloudParam("Zone")
+ private String zone;
+
+ /** 项目 ID。不填写为默认项目,子帐号必须填写。 请参考 [GetProjectList 接口](../summary/get_project_list.html) */
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** 集群资源id */
+ @NotEmpty
+ @UCloudParam("ClusterInstanceId")
+ private String clusterInstanceId;
+
+ 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 getClusterInstanceId() {
+ return clusterInstanceId;
+ }
+
+ public void setClusterInstanceId(String clusterInstanceId) {
+ this.clusterInstanceId = clusterInstanceId;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaTopicsResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaTopicsResponse.java
new file mode 100644
index 00000000..0981a7e9
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ListUKafkaTopicsResponse.java
@@ -0,0 +1,122 @@
+/**
+ * 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.ukafka.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class ListUKafkaTopicsResponse extends Response {
+
+ /** topic 信息列表 */
+ @SerializedName("TopicList")
+ 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ModifyUKafkaInstanceTypeRequest 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 */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ /** 目标机型,支持的机型可通过GetUKafkaNodeType 接口返回的InstanceTypeSet[].InstanceTypeName */
+ @NotEmpty
+ @UCloudParam("NodeType")
+ private String nodeType;
+
+ 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 getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+
+ public String getNodeType() {
+ return nodeType;
+ }
+
+ public void setNodeType(String nodeType) {
+ this.nodeType = nodeType;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ModifyUKafkaInstanceTypeResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ModifyUKafkaInstanceTypeResponse.java
new file mode 100644
index 00000000..0dfd4465
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ModifyUKafkaInstanceTypeResponse.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.ukafka.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class ModifyUKafkaInstanceTypeResponse extends Response {}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ResizeUKafkaDiskRequest.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ResizeUKafkaDiskRequest.java
new file mode 100644
index 00000000..491d5c61
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ResizeUKafkaDiskRequest.java
@@ -0,0 +1,89 @@
+/**
+ * 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.ukafka.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ResizeUKafkaDiskRequest 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 */
+ @NotEmpty
+ @UCloudParam("InstanceId")
+ private String instanceId;
+
+ /** 数据盘大小。支持范围根据GetUKafkaNodeType 接口返回的InstanceTypeSet[].MaxDiskSize 和MinDiskSize获取 */
+ @NotEmpty
+ @UCloudParam("DiskSize")
+ private Integer diskSize;
+
+ 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 getInstanceId() {
+ return instanceId;
+ }
+
+ public void setInstanceId(String instanceId) {
+ this.instanceId = instanceId;
+ }
+
+ public Integer getDiskSize() {
+ return diskSize;
+ }
+
+ public void setDiskSize(Integer diskSize) {
+ this.diskSize = diskSize;
+ }
+}
diff --git a/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ResizeUKafkaDiskResponse.java b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ResizeUKafkaDiskResponse.java
new file mode 100644
index 00000000..687c6aea
--- /dev/null
+++ b/ucloud-sdk-java-ukafka/src/main/java/cn/ucloud/ukafka/models/ResizeUKafkaDiskResponse.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.ukafka.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class ResizeUKafkaDiskResponse extends Response {}
diff --git a/ucloud-sdk-java-ulb/pom.xml b/ucloud-sdk-java-ulb/pom.xml
index 89ed72ac..b0947a70 100644
--- a/ucloud-sdk-java-ulb/pom.xml
+++ b/ucloud-sdk-java-ulb/pom.xml
@@ -5,19 +5,19 @@