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.sandbox.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.sandbox.models.GetSandboxSiteRequest; +import cn.ucloud.sandbox.models.GetSandboxSiteResponse; + +/** This client is used to call actions of **sandbox** service */ +public class sandboxClient extends DefaultClient implements sandboxClientInterface { + public sandboxClient(Config config, Credential credential) { + super(config, credential); + } + + /** + * GetSandboxSite - 获取沙箱站点 + * + * @param request Request object + * @throws UCloudException Exception + */ + public GetSandboxSiteResponse getSandboxSite(GetSandboxSiteRequest request) + throws UCloudException { + request.setAction("GetSandboxSite"); + return (GetSandboxSiteResponse) this.invoke(request, GetSandboxSiteResponse.class); + } +} diff --git a/ucloud-sdk-java-sandbox/src/main/java/cn/ucloud/sandbox/client/sandboxClientInterface.java b/ucloud-sdk-java-sandbox/src/main/java/cn/ucloud/sandbox/client/sandboxClientInterface.java new file mode 100644 index 00000000..26a8304f --- /dev/null +++ b/ucloud-sdk-java-sandbox/src/main/java/cn/ucloud/sandbox/client/sandboxClientInterface.java @@ -0,0 +1,32 @@ +/** + * 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.sandbox.client; + +import cn.ucloud.common.client.Client; +import cn.ucloud.common.exception.UCloudException; +import cn.ucloud.sandbox.models.GetSandboxSiteRequest; +import cn.ucloud.sandbox.models.GetSandboxSiteResponse; + +/** This client is used to call actions of **sandbox** service */ +public interface sandboxClientInterface extends Client { + + /** + * GetSandboxSite - 获取沙箱站点 + * + * @param request Request object + * @throws UCloudException Exception + */ + public GetSandboxSiteResponse getSandboxSite(GetSandboxSiteRequest request) + throws UCloudException; +} diff --git a/ucloud-sdk-java-sandbox/src/main/java/cn/ucloud/sandbox/models/GetSandboxSiteRequest.java b/ucloud-sdk-java-sandbox/src/main/java/cn/ucloud/sandbox/models/GetSandboxSiteRequest.java new file mode 100644 index 00000000..bddbfd0e --- /dev/null +++ b/ucloud-sdk-java-sandbox/src/main/java/cn/ucloud/sandbox/models/GetSandboxSiteRequest.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.sandbox.models; + + +import cn.ucloud.common.annotation.NotEmpty; +import cn.ucloud.common.annotation.UCloudParam; +import cn.ucloud.common.request.Request; + +public class GetSandboxSiteRequest 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("SandboxID") + private String sandboxID; + + 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 getSandboxID() { + return sandboxID; + } + + public void setSandboxID(String sandboxID) { + this.sandboxID = sandboxID; + } +} diff --git a/ucloud-sdk-java-sandbox/src/main/java/cn/ucloud/sandbox/models/GetSandboxSiteResponse.java b/ucloud-sdk-java-sandbox/src/main/java/cn/ucloud/sandbox/models/GetSandboxSiteResponse.java new file mode 100644 index 00000000..a75caeb1 --- /dev/null +++ b/ucloud-sdk-java-sandbox/src/main/java/cn/ucloud/sandbox/models/GetSandboxSiteResponse.java @@ -0,0 +1,194 @@ +/** + * 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.sandbox.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class GetSandboxSiteResponse extends Response {
+
+ /** 站点 */
+ @SerializedName("Site")
+ private Site site;
+
+ public Site getSite() {
+ return site;
+ }
+
+ public void setSite(Site site) {
+ this.site = site;
+ }
+
+ public static class Site extends Response {
+
+ /** 名称 */
+ @SerializedName("Name")
+ private String name;
+
+ /** 是否就绪 */
+ @SerializedName("Ready")
+ private Boolean ready;
+
+ /** 站点ID */
+ @SerializedName("ID")
+ private String id;
+
+ /** 沙箱ID */
+ @SerializedName("SandboxID")
+ private String sandboxID;
+
+ /** 站点访问地址 */
+ @SerializedName("Host")
+ private String host;
+
+ /** 站点Key ID */
+ @SerializedName("KeyID")
+ private String keyID;
+
+ /** 更新时间 */
+ @SerializedName("UpdateTime")
+ private Integer updateTime;
+
+ /** 访问码 */
+ @SerializedName("AccessCode")
+ private String accessCode;
+
+ /** 连接密钥 */
+ @SerializedName("ConnectKey")
+ private String connectKey;
+
+ /** 站点环境变量。格式:key=value */
+ @SerializedName("Envs")
+ 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.uwsc.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class CreateCEGatewayRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @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;
+
+ /** 所属UWAN虚拟路由器资源ID */
+ @NotEmpty
+ @UCloudParam("PopGwId")
+ private String popGwId;
+
+ /** 客户自有公网IP */
+ @NotEmpty
+ @UCloudParam("PublicIp")
+ private String publicIp;
+
+ /** IP类型 枚举值:静态IP(Static) | 动态IP(Dynamic) */
+ @NotEmpty
+ @UCloudParam("IpType")
+ private String ipType;
+
+ /** 资源名称 */
+ @UCloudParam("Name")
+ private String name;
+
+ /** 备注 */
+ @UCloudParam("Remark")
+ private String remark;
+
+ 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 getPopGwId() {
+ return popGwId;
+ }
+
+ public void setPopGwId(String popGwId) {
+ this.popGwId = popGwId;
+ }
+
+ public String getPublicIp() {
+ return publicIp;
+ }
+
+ public void setPublicIp(String publicIp) {
+ this.publicIp = publicIp;
+ }
+
+ public String getIpType() {
+ return ipType;
+ }
+
+ public void setIpType(String ipType) {
+ this.ipType = ipType;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/CreateCEGatewayResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/CreateCEGatewayResponse.java
new file mode 100644
index 00000000..71b12504
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/CreateCEGatewayResponse.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.uwsc.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class CreateCEGatewayResponse extends Response {
+
+ /** 客户网关资源 ID */
+ @SerializedName("VPNId")
+ private String vpnId;
+
+ /** 请求 ID */
+ @SerializedName("RequestId")
+ private String requestId;
+
+ public String getVPNId() {
+ return vpnId;
+ }
+
+ public void setVPNId(String vpnId) {
+ this.vpnId = vpnId;
+ }
+
+ public String getRequestId() {
+ return requestId;
+ }
+
+ public void setRequestId(String requestId) {
+ this.requestId = requestId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/CreateCETunnelRequest.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/CreateCETunnelRequest.java
new file mode 100644
index 00000000..22b3940e
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/CreateCETunnelRequest.java
@@ -0,0 +1,501 @@
+/**
+ * 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.uwsc.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 CreateCETunnelRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @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;
+
+ /** 所属CE网关资源ID */
+ @NotEmpty
+ @UCloudParam("VPNId")
+ private String vpnId;
+
+ /** */
+ @UCloudParam("IKEConf")
+ private IKEConf ikeConf;
+
+ /** */
+ @UCloudParam("IPSecConf")
+ private IPSecConf ipSecConf;
+
+ /** IPSec 关闭后动作,枚举值:restart、trap、none */
+ @NotEmpty
+ @UCloudParam("CloseAction")
+ private String closeAction;
+
+ /** */
+ @UCloudParam("DPDConf")
+ private DPDConf dpdConf;
+
+ /** 路由模式,枚举值: 感兴趣流(FLow) | BGP(BGP) */
+ @NotEmpty
+ @UCloudParam("Mode")
+ private String mode;
+
+ /** */
+ @UCloudParam("BGPConf")
+ private BGPConf bgpConf;
+
+ /** 资源名称 */
+ @UCloudParam("Name")
+ private String name;
+
+ /** 备注 */
+ @UCloudParam("Remark")
+ private String remark;
+
+ 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 getVPNId() {
+ return vpnId;
+ }
+
+ public void setVPNId(String vpnId) {
+ this.vpnId = vpnId;
+ }
+
+ public IKEConf getIKEConf() {
+ return ikeConf;
+ }
+
+ public void setIKEConf(IKEConf ikeConf) {
+ this.ikeConf = ikeConf;
+ }
+
+ public IPSecConf getIPSecConf() {
+ return ipSecConf;
+ }
+
+ public void setIPSecConf(IPSecConf ipSecConf) {
+ this.ipSecConf = ipSecConf;
+ }
+
+ public String getCloseAction() {
+ return closeAction;
+ }
+
+ public void setCloseAction(String closeAction) {
+ this.closeAction = closeAction;
+ }
+
+ public DPDConf getDPDConf() {
+ return dpdConf;
+ }
+
+ public void setDPDConf(DPDConf dpdConf) {
+ this.dpdConf = dpdConf;
+ }
+
+ public String getMode() {
+ return mode;
+ }
+
+ public void setMode(String mode) {
+ this.mode = mode;
+ }
+
+ public BGPConf getBGPConf() {
+ return bgpConf;
+ }
+
+ public void setBGPConf(BGPConf bgpConf) {
+ this.bgpConf = bgpConf;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+
+ public static class BGPConf extends Request {
+
+ /** BGP隧道网段。该网段需是一个在 169.254.0.0/16 内的掩码长度为 30 的网段。 */
+ @UCloudParam("TunnelCidr")
+ private String tunnelCidr;
+
+ /** Ucloud侧的自治系统号。 */
+ @UCloudParam("LocalAsn")
+ private String localAsn;
+
+ /** 对端BGP ASN号。 */
+ @UCloudParam("PeerAsn")
+ private String peerAsn;
+
+ /** 云端BGP地址。必须从BGP隧道网段内分配。 */
+ @UCloudParam("LocalIp")
+ private String localIp;
+
+ /** 用户端BGP地址。必须从BGP隧道网段内分配。 */
+ @UCloudParam("PeerIp")
+ private String peerIp;
+
+ public String getTunnelCidr() {
+ return tunnelCidr;
+ }
+
+ public void setTunnelCidr(String tunnelCidr) {
+ this.tunnelCidr = tunnelCidr;
+ }
+
+ public String getLocalAsn() {
+ return localAsn;
+ }
+
+ public void setLocalAsn(String localAsn) {
+ this.localAsn = localAsn;
+ }
+
+ public String getPeerAsn() {
+ return peerAsn;
+ }
+
+ public void setPeerAsn(String peerAsn) {
+ this.peerAsn = peerAsn;
+ }
+
+ public String getLocalIp() {
+ return localIp;
+ }
+
+ public void setLocalIp(String localIp) {
+ this.localIp = localIp;
+ }
+
+ public String getPeerIp() {
+ return peerIp;
+ }
+
+ public void setPeerIp(String peerIp) {
+ this.peerIp = peerIp;
+ }
+ }
+
+ public static class DPDConf extends Request {
+
+ /** 是否开启 DPD(对等体存活检测)功能。取值:0(关闭)、1(开启) */
+ @NotEmpty
+ @UCloudParam("Enabled")
+ private Integer enabled;
+
+ /** DPD超时后的动作,Enable为1(开启)时有效。可取值为clear(断开)、restart(重试)和 trap(流量触发) */
+ @UCloudParam("Action")
+ private String action;
+
+ /** DPD探测间隔时间。dpdEnable为1(开启)时有效。单位为秒,默认为 10 */
+ @UCloudParam("Delay")
+ private Integer delay;
+
+ /** DPD超时时间。即探测确认对端不存在需要的时间。dpdEnable为1(开启)时有效。单位为秒。取值范围为 30-60(IKEv2 默认为 0) */
+ @UCloudParam("Timeout")
+ private Integer timeout;
+
+ public Integer getEnabled() {
+ return enabled;
+ }
+
+ public void setEnabled(Integer enabled) {
+ this.enabled = enabled;
+ }
+
+ public String getAction() {
+ return action;
+ }
+
+ public void setAction(String action) {
+ this.action = action;
+ }
+
+ public Integer getDelay() {
+ return delay;
+ }
+
+ public void setDelay(Integer delay) {
+ this.delay = delay;
+ }
+
+ public Integer getTimeout() {
+ return timeout;
+ }
+
+ public void setTimeout(Integer timeout) {
+ this.timeout = timeout;
+ }
+ }
+
+ public static class IKEConf extends Request {
+
+ /** IKE 共享密钥 */
+ @NotEmpty
+ @UCloudParam("PreSharedKey")
+ private String preSharedKey;
+
+ /** IKE 版本,取值: "ike v1","ike v2" */
+ @NotEmpty
+ @UCloudParam("Version")
+ private String version;
+
+ /** IKE 协商模式,主模式(main)/野蛮模式(aggressive),IKE V2时不使用该参数 */
+ @NotEmpty
+ @UCloudParam("ExchangeMode")
+ private String exchangeMode;
+
+ /** IKE 加密算法,取值:"aes128", "aes192", "aes256", "aes512", "3des" */
+ @NotEmpty
+ @UCloudParam("EncryptionAlgorithm")
+ private String encryptionAlgorithm;
+
+ /** IKE 认证算法,取值:"md5", "sha1", "sha2-256" */
+ @NotEmpty
+ @UCloudParam("AuthenticationAlgorithm")
+ private String authenticationAlgorithm;
+
+ /** DH group,指定IKE交换密钥时使用的DH组。取值:"1", "2", "5", "14", "15", "16" */
+ @NotEmpty
+ @UCloudParam("DhGroup")
+ private String dhGroup;
+
+ /** 本端标识,取值:“auto”,“ 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.uwsc.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class CreateCETunnelResponse extends Response {
+
+ /** VPN 隧道 ID */
+ @SerializedName("VPNTunnelId")
+ private String vpnTunnelId;
+
+ public String getVPNTunnelId() {
+ return vpnTunnelId;
+ }
+
+ public void setVPNTunnelId(String vpnTunnelId) {
+ this.vpnTunnelId = vpnTunnelId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/CreatePOPGWRequest.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/CreatePOPGWRequest.java
new file mode 100644
index 00000000..ca7ac0f7
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/CreatePOPGWRequest.java
@@ -0,0 +1,263 @@
+/**
+ * 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.uwsc.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class CreatePOPGWRequest 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;
+
+ /** */
+ @UCloudParam("BWConf")
+ private BWConf bwConf;
+
+ /** 资源名称 */
+ @NotEmpty
+ @UCloudParam("Name")
+ private String name;
+
+ /** UWAN 网关的购买时长,默认为 0,代表有效期至月底。(保持和BWConf.Quantity 相同) */
+ @NotEmpty
+ @UCloudParam("Quantity")
+ private Integer quantity;
+
+ /** 资源备注信息 */
+ @UCloudParam("Remark")
+ private String remark;
+
+ /** 付费方式, 枚举值为: - Year:按年付费; - Month: 按月付费; (月付非必填,默认为 0;年付必填。) */
+ @UCloudParam("ChargeType")
+ private String chargeType;
+
+ /** 入网类型,仅支持“IPSec” */
+ @UCloudParam("Type")
+ private String type;
+
+ /** 代金券ID, 默认不使用 */
+ @UCloudParam("CouponId")
+ private String couponId;
+
+ public String getRegion() {
+ return region;
+ }
+
+ public void setRegion(String region) {
+ this.region = region;
+ }
+
+ public String getZone() {
+ return zone;
+ }
+
+ public void setZone(String zone) {
+ this.zone = zone;
+ }
+
+ public String getProjectId() {
+ return projectId;
+ }
+
+ public void setProjectId(String projectId) {
+ this.projectId = projectId;
+ }
+
+ public BWConf getBWConf() {
+ return bwConf;
+ }
+
+ public void setBWConf(BWConf bwConf) {
+ this.bwConf = bwConf;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public Integer getQuantity() {
+ return quantity;
+ }
+
+ public void setQuantity(Integer quantity) {
+ this.quantity = quantity;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+
+ public String getChargeType() {
+ return chargeType;
+ }
+
+ public void setChargeType(String chargeType) {
+ this.chargeType = chargeType;
+ }
+
+ public String getType() {
+ return type;
+ }
+
+ public void setType(String type) {
+ this.type = type;
+ }
+
+ public String getCouponId() {
+ return couponId;
+ }
+
+ public void setCouponId(String couponId) {
+ this.couponId = couponId;
+ }
+
+ public static class BWConf extends Request {
+
+ /** 带宽的名称 */
+ @NotEmpty
+ @UCloudParam("Name")
+ private String name;
+
+ /** 带宽的计费方式,取值: - fixed-bw:固定带宽计费; - traffic:流量计费。 */
+ @NotEmpty
+ @UCloudParam("PayMode")
+ private String payMode;
+
+ /** UWAN 网关的带宽规格。取值:1-100。单位:Mbps。 */
+ @NotEmpty
+ @UCloudParam("BwMax")
+ private Double bwMax;
+
+ /** 付费方式,枚举值: - Month:月付; - Year:年付; - Postpadi:后付费(仅支持流量计费方式) */
+ @NotEmpty
+ @UCloudParam("ChargeType")
+ private String chargeType;
+
+ /** 带宽购买时长,默认为 0,代表有效期至月底 */
+ @UCloudParam("Quantity")
+ private Double quantity;
+
+ /** 产品 ID */
+ @UCloudParam("ProductId")
+ private Integer productId;
+
+ /** 优惠券 ID */
+ @UCloudParam("CouponId")
+ private String couponId;
+
+ /** 带宽包备注信息 */
+ @UCloudParam("Remark")
+ private String remark;
+
+ /** 带宽类型,默认为空字符串 */
+ @UCloudParam("BwType")
+ private String bwType;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getPayMode() {
+ return payMode;
+ }
+
+ public void setPayMode(String payMode) {
+ this.payMode = payMode;
+ }
+
+ public Double getBwMax() {
+ return bwMax;
+ }
+
+ public void setBwMax(Double bwMax) {
+ this.bwMax = bwMax;
+ }
+
+ public String getChargeType() {
+ return chargeType;
+ }
+
+ public void setChargeType(String chargeType) {
+ this.chargeType = chargeType;
+ }
+
+ public Double getQuantity() {
+ return quantity;
+ }
+
+ public void setQuantity(Double quantity) {
+ this.quantity = quantity;
+ }
+
+ public Integer getProductId() {
+ return productId;
+ }
+
+ public void setProductId(Integer productId) {
+ this.productId = productId;
+ }
+
+ public String getCouponId() {
+ return couponId;
+ }
+
+ public void setCouponId(String couponId) {
+ this.couponId = couponId;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+
+ public String getBwType() {
+ return bwType;
+ }
+
+ public void setBwType(String bwType) {
+ this.bwType = bwType;
+ }
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/CreatePOPGWResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/CreatePOPGWResponse.java
new file mode 100644
index 00000000..9c650845
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/CreatePOPGWResponse.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.uwsc.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class CreatePOPGWResponse extends Response {
+
+ /** UWAN 网关实例 ID */
+ @SerializedName("PopGwId")
+ private String popGwId;
+
+ /** 请求 ID */
+ @SerializedName("RequestId")
+ private String requestId;
+
+ public String getPopGwId() {
+ return popGwId;
+ }
+
+ public void setPopGwId(String popGwId) {
+ this.popGwId = popGwId;
+ }
+
+ public String getRequestId() {
+ return requestId;
+ }
+
+ public void setRequestId(String requestId) {
+ this.requestId = requestId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeleteCEGatewayRequest.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeleteCEGatewayRequest.java
new file mode 100644
index 00000000..d14e60d2
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeleteCEGatewayRequest.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.uwsc.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DeleteCEGatewayRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @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;
+
+ /** CE 实例 ID */
+ @NotEmpty
+ @UCloudParam("VPNId")
+ private String vpnId;
+
+ 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 getVPNId() {
+ return vpnId;
+ }
+
+ public void setVPNId(String vpnId) {
+ this.vpnId = vpnId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeleteCEGatewayResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeleteCEGatewayResponse.java
new file mode 100644
index 00000000..219f3f16
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeleteCEGatewayResponse.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.uwsc.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class DeleteCEGatewayResponse extends Response {
+
+ /** 请求 ID */
+ @SerializedName("RequestId")
+ private String requestId;
+
+ public String getRequestId() {
+ return requestId;
+ }
+
+ public void setRequestId(String requestId) {
+ this.requestId = requestId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeleteCETunnelRequest.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeleteCETunnelRequest.java
new file mode 100644
index 00000000..6d78b785
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeleteCETunnelRequest.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.uwsc.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DeleteCETunnelRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @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;
+
+ /** 资源ID */
+ @NotEmpty
+ @UCloudParam("VPNTunnelId")
+ private String vpnTunnelId;
+
+ 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 getVPNTunnelId() {
+ return vpnTunnelId;
+ }
+
+ public void setVPNTunnelId(String vpnTunnelId) {
+ this.vpnTunnelId = vpnTunnelId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeleteCETunnelResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeleteCETunnelResponse.java
new file mode 100644
index 00000000..5d90ac20
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeleteCETunnelResponse.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.uwsc.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class DeleteCETunnelResponse extends Response {
+
+ /** 请求 ID */
+ @SerializedName("RequestId")
+ private String requestId;
+
+ public String getRequestId() {
+ return requestId;
+ }
+
+ public void setRequestId(String requestId) {
+ this.requestId = requestId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeletePOPGWRequest.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeletePOPGWRequest.java
new file mode 100644
index 00000000..405faebd
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeletePOPGWRequest.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.uwsc.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DeletePOPGWRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @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;
+
+ /** UWAN虚拟路由器资源ID */
+ @NotEmpty
+ @UCloudParam("PopGwId")
+ private String popGwId;
+
+ 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 getPopGwId() {
+ return popGwId;
+ }
+
+ public void setPopGwId(String popGwId) {
+ this.popGwId = popGwId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeletePOPGWResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeletePOPGWResponse.java
new file mode 100644
index 00000000..b40d8857
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DeletePOPGWResponse.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.uwsc.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class DeletePOPGWResponse extends Response {
+
+ /** 请求 ID */
+ @SerializedName("RequestId")
+ private String requestId;
+
+ public String getRequestId() {
+ return requestId;
+ }
+
+ public void setRequestId(String requestId) {
+ this.requestId = requestId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DescribeCEGatewayRequest.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DescribeCEGatewayRequest.java
new file mode 100644
index 00000000..a706924d
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DescribeCEGatewayRequest.java
@@ -0,0 +1,108 @@
+/**
+ * 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.uwsc.models;
+
+
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DescribeCEGatewayRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @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;
+
+ /** UWAN 实例 ID */
+ @UCloudParam("PopGwId")
+ private String popGwId;
+
+ /** CE 实例 ID */
+ @UCloudParam("VPNId")
+ private String vpnId;
+
+ /** 偏移量 */
+ @UCloudParam("Offset")
+ private Integer offset;
+
+ /** 限制量 */
+ @UCloudParam("Limit")
+ private Integer limit;
+
+ public String getRegion() {
+ return region;
+ }
+
+ public void setRegion(String region) {
+ this.region = region;
+ }
+
+ public String getZone() {
+ return zone;
+ }
+
+ public void setZone(String zone) {
+ this.zone = zone;
+ }
+
+ public String getProjectId() {
+ return projectId;
+ }
+
+ public void setProjectId(String projectId) {
+ this.projectId = projectId;
+ }
+
+ public String getPopGwId() {
+ return popGwId;
+ }
+
+ public void setPopGwId(String popGwId) {
+ this.popGwId = popGwId;
+ }
+
+ public String getVPNId() {
+ return vpnId;
+ }
+
+ public void setVPNId(String vpnId) {
+ this.vpnId = vpnId;
+ }
+
+ 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-uwsc/src/main/java/cn/ucloud/uwsc/models/DescribeCEGatewayResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DescribeCEGatewayResponse.java
new file mode 100644
index 00000000..82f75f1b
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DescribeCEGatewayResponse.java
@@ -0,0 +1,194 @@
+/**
+ * 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.uwsc.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class DescribeCEGatewayResponse extends Response {
+
+ /** 总数 */
+ @SerializedName("TotalCount")
+ private Integer totalCount;
+
+ /** CE信息 */
+ @SerializedName("VPNInfos")
+ 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.uwsc.models;
+
+
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DescribeCETunnelRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @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;
+
+ /** CE 网关 ID */
+ @UCloudParam("VPNId")
+ private String vpnId;
+
+ /** 隧道 ID */
+ @UCloudParam("VPNTunnelId")
+ private String vpnTunnelId;
+
+ /** 列表起始位置偏移量,默认为0 */
+ @UCloudParam("Offset")
+ private Integer offset;
+
+ /** 返回数据长度,默认为20,最大100 */
+ @UCloudParam("Limit")
+ private Integer limit;
+
+ public String getRegion() {
+ return region;
+ }
+
+ public void setRegion(String region) {
+ this.region = region;
+ }
+
+ public String getZone() {
+ return zone;
+ }
+
+ public void setZone(String zone) {
+ this.zone = zone;
+ }
+
+ public String getProjectId() {
+ return projectId;
+ }
+
+ public void setProjectId(String projectId) {
+ this.projectId = projectId;
+ }
+
+ public String getVPNId() {
+ return vpnId;
+ }
+
+ public void setVPNId(String vpnId) {
+ this.vpnId = vpnId;
+ }
+
+ public String getVPNTunnelId() {
+ return vpnTunnelId;
+ }
+
+ public void setVPNTunnelId(String vpnTunnelId) {
+ this.vpnTunnelId = vpnTunnelId;
+ }
+
+ 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-uwsc/src/main/java/cn/ucloud/uwsc/models/DescribeCETunnelResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DescribeCETunnelResponse.java
new file mode 100644
index 00000000..08c186a0
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DescribeCETunnelResponse.java
@@ -0,0 +1,530 @@
+/**
+ * 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.uwsc.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class DescribeCETunnelResponse extends Response {
+
+ /** 总数 */
+ @SerializedName("TotalCount")
+ private Integer totalCount;
+
+ /** 隧道信息 */
+ @SerializedName("VPNTunnelInfos")
+ 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.uwsc.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class DescribePOPGWRequest 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;
+
+ /** UWAN 实例 ID */
+ @NotEmpty
+ @UCloudParam("PopGwId")
+ private String popGwId;
+
+ /** 偏移量 */
+ @UCloudParam("Offset")
+ private Integer offset;
+
+ /** 限制量 */
+ @UCloudParam("Limit")
+ private Integer limit;
+
+ public String getRegion() {
+ return region;
+ }
+
+ public void setRegion(String region) {
+ this.region = region;
+ }
+
+ public String getZone() {
+ return zone;
+ }
+
+ public void setZone(String zone) {
+ this.zone = zone;
+ }
+
+ public String getProjectId() {
+ return projectId;
+ }
+
+ public void setProjectId(String projectId) {
+ this.projectId = projectId;
+ }
+
+ public String getPopGwId() {
+ return popGwId;
+ }
+
+ public void setPopGwId(String popGwId) {
+ this.popGwId = popGwId;
+ }
+
+ 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-uwsc/src/main/java/cn/ucloud/uwsc/models/DescribePOPGWResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DescribePOPGWResponse.java
new file mode 100644
index 00000000..95a0f18e
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/DescribePOPGWResponse.java
@@ -0,0 +1,395 @@
+/**
+ * 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.uwsc.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class DescribePOPGWResponse extends Response {
+
+ /** 总数 */
+ @SerializedName("TotalCount")
+ private Integer totalCount;
+
+ /** UWAN 实例信息 */
+ @SerializedName("POPGWInfos")
+ 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.uwsc.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class ListAvailableRegionRequest extends Request {
+
+ /**
+ * 项目ID。不填写为默认项目,子帐号必须填写。
+ * 请参考[GetProjectList接口](https://docs.ucloud.cn/api/summary/get_project_list)
+ */
+ @NotEmpty
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ public String getProjectId() {
+ return projectId;
+ }
+
+ public void setProjectId(String projectId) {
+ this.projectId = projectId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/ListAvailableRegionResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/ListAvailableRegionResponse.java
new file mode 100644
index 00000000..d78a7659
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/ListAvailableRegionResponse.java
@@ -0,0 +1,35 @@
+/**
+ * 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.uwsc.models;
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+import java.util.List;
+
+public class ListAvailableRegionResponse extends Response {
+
+ /** 可用地域 */
+ @SerializedName("Region")
+ 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.uwsc.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class UpdateBWPackageRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @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)
+ */
+ @NotEmpty
+ @UCloudParam("ProjectId")
+ private String projectId;
+
+ /** 带宽包资源ID */
+ @NotEmpty
+ @UCloudParam("BwId")
+ private String bwId;
+
+ /** 带宽峰值 */
+ @NotEmpty
+ @UCloudParam("BwMax")
+ private Double bwMax;
+
+ 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 getBwId() {
+ return bwId;
+ }
+
+ public void setBwId(String bwId) {
+ this.bwId = bwId;
+ }
+
+ public Double getBwMax() {
+ return bwMax;
+ }
+
+ public void setBwMax(Double bwMax) {
+ this.bwMax = bwMax;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateBWPackageResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateBWPackageResponse.java
new file mode 100644
index 00000000..f24c603d
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateBWPackageResponse.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.uwsc.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class UpdateBWPackageResponse extends Response {
+
+ /** 请求 ID */
+ @SerializedName("RequestId")
+ private String requestId;
+
+ public String getRequestId() {
+ return requestId;
+ }
+
+ public void setRequestId(String requestId) {
+ this.requestId = requestId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCEGatewayRequest.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCEGatewayRequest.java
new file mode 100644
index 00000000..fe1e4546
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCEGatewayRequest.java
@@ -0,0 +1,110 @@
+/**
+ * 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.uwsc.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class UpdateCEGatewayRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @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;
+
+ /** CE网关资源ID */
+ @NotEmpty
+ @UCloudParam("VPNId")
+ private String vpnId;
+
+ /** 公网IP */
+ @UCloudParam("PublicIp")
+ private String publicIp;
+
+ /** 资源名称 */
+ @UCloudParam("Name")
+ private String name;
+
+ /** 备注 */
+ @UCloudParam("Remark")
+ private String remark;
+
+ 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 getVPNId() {
+ return vpnId;
+ }
+
+ public void setVPNId(String vpnId) {
+ this.vpnId = vpnId;
+ }
+
+ public String getPublicIp() {
+ return publicIp;
+ }
+
+ public void setPublicIp(String publicIp) {
+ this.publicIp = publicIp;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCEGatewayResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCEGatewayResponse.java
new file mode 100644
index 00000000..9e58d00e
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCEGatewayResponse.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.uwsc.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class UpdateCEGatewayResponse extends Response {
+
+ /** 请求 ID */
+ @SerializedName("RequestId")
+ private String requestId;
+
+ public String getRequestId() {
+ return requestId;
+ }
+
+ public void setRequestId(String requestId) {
+ this.requestId = requestId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCETunnelAttributeRequest.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCETunnelAttributeRequest.java
new file mode 100644
index 00000000..cf0755b0
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCETunnelAttributeRequest.java
@@ -0,0 +1,98 @@
+/**
+ * Copyright 2021 UCloud Technology Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.uwsc.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class UpdateCETunnelAttributeRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @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;
+
+ /** 资源ID */
+ @NotEmpty
+ @UCloudParam("VPNTunnelId")
+ private String vpnTunnelId;
+
+ /** 资源名称 */
+ @UCloudParam("Name")
+ private String name;
+
+ /** 备注 */
+ @UCloudParam("Remark")
+ private String remark;
+
+ 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 getVPNTunnelId() {
+ return vpnTunnelId;
+ }
+
+ public void setVPNTunnelId(String vpnTunnelId) {
+ this.vpnTunnelId = vpnTunnelId;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCETunnelAttributeResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCETunnelAttributeResponse.java
new file mode 100644
index 00000000..d7dcf6ed
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCETunnelAttributeResponse.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.uwsc.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class UpdateCETunnelAttributeResponse extends Response {
+
+ /** 请求 ID */
+ @SerializedName("RequestId")
+ private String requestId;
+
+ public String getRequestId() {
+ return requestId;
+ }
+
+ public void setRequestId(String requestId) {
+ this.requestId = requestId;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCETunnelRequest.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCETunnelRequest.java
new file mode 100644
index 00000000..ea36296a
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdateCETunnelRequest.java
@@ -0,0 +1,462 @@
+/**
+ * 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.uwsc.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 UpdateCETunnelRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @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;
+
+ /** 资源ID */
+ @NotEmpty
+ @UCloudParam("VPNTunnelId")
+ private String vpnTunnelId;
+
+ /** */
+ @UCloudParam("IKEConf")
+ private IKEConf ikeConf;
+
+ /** */
+ @UCloudParam("IPSecConf")
+ private IPSecConf ipSecConf;
+
+ /** IPSec 关闭后动作,枚举值:restart、trap、none */
+ @UCloudParam("CloseAction")
+ private String closeAction;
+
+ /** */
+ @UCloudParam("DPDConf")
+ private DPDConf dpdConf;
+
+ /** */
+ @UCloudParam("BGPConf")
+ private BGPConf bgpConf;
+
+ 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 getVPNTunnelId() {
+ return vpnTunnelId;
+ }
+
+ public void setVPNTunnelId(String vpnTunnelId) {
+ this.vpnTunnelId = vpnTunnelId;
+ }
+
+ public IKEConf getIKEConf() {
+ return ikeConf;
+ }
+
+ public void setIKEConf(IKEConf ikeConf) {
+ this.ikeConf = ikeConf;
+ }
+
+ public IPSecConf getIPSecConf() {
+ return ipSecConf;
+ }
+
+ public void setIPSecConf(IPSecConf ipSecConf) {
+ this.ipSecConf = ipSecConf;
+ }
+
+ public String getCloseAction() {
+ return closeAction;
+ }
+
+ public void setCloseAction(String closeAction) {
+ this.closeAction = closeAction;
+ }
+
+ public DPDConf getDPDConf() {
+ return dpdConf;
+ }
+
+ public void setDPDConf(DPDConf dpdConf) {
+ this.dpdConf = dpdConf;
+ }
+
+ public BGPConf getBGPConf() {
+ return bgpConf;
+ }
+
+ public void setBGPConf(BGPConf bgpConf) {
+ this.bgpConf = bgpConf;
+ }
+
+ public static class BGPConf extends Request {
+
+ /** BGP隧道网段。该网段需是一个在 169.254.0.0/16 内的掩码长度为 30 的网段。 */
+ @UCloudParam("TunnelCidr")
+ private String tunnelCidr;
+
+ /** Ucloud侧的自治系统号。 */
+ @UCloudParam("LocalAsn")
+ private String localAsn;
+
+ /** 对端BGP ASN号。 */
+ @UCloudParam("PeerAsn")
+ private String peerAsn;
+
+ /** 云端BGP地址。必须从BGP隧道网段内分配。 */
+ @UCloudParam("LocalIp")
+ private String localIp;
+
+ /** 用户端BGP地址。必须从BGP隧道网段内分配。 */
+ @UCloudParam("PeerIp")
+ private String peerIp;
+
+ public String getTunnelCidr() {
+ return tunnelCidr;
+ }
+
+ public void setTunnelCidr(String tunnelCidr) {
+ this.tunnelCidr = tunnelCidr;
+ }
+
+ public String getLocalAsn() {
+ return localAsn;
+ }
+
+ public void setLocalAsn(String localAsn) {
+ this.localAsn = localAsn;
+ }
+
+ public String getPeerAsn() {
+ return peerAsn;
+ }
+
+ public void setPeerAsn(String peerAsn) {
+ this.peerAsn = peerAsn;
+ }
+
+ public String getLocalIp() {
+ return localIp;
+ }
+
+ public void setLocalIp(String localIp) {
+ this.localIp = localIp;
+ }
+
+ public String getPeerIp() {
+ return peerIp;
+ }
+
+ public void setPeerIp(String peerIp) {
+ this.peerIp = peerIp;
+ }
+ }
+
+ public static class DPDConf extends Request {
+
+ /** 是否开启 DPD(对等体存活检测)功能。取值:0(关闭)、1(开启) */
+ @UCloudParam("Enabled")
+ private String enabled;
+
+ /** DPD超时后的动作,Enable为1(开启)时有效。可取值为clear(断开)、restart(重试)和 trap(流量触发) */
+ @UCloudParam("Action")
+ private String action;
+
+ /** DPD探测间隔时间。dpdEnable为1(开启)时有效。单位为秒,默认为 10 */
+ @UCloudParam("Delay")
+ private String delay;
+
+ /** DPD超时时间。即探测确认对端不存在需要的时间。dpdEnable为1(开启)时有效。单位为秒。取值范围为 30-60(IKEv2 默认为 0) */
+ @UCloudParam("Timeout")
+ private String timeout;
+
+ public String getEnabled() {
+ return enabled;
+ }
+
+ public void setEnabled(String enabled) {
+ this.enabled = enabled;
+ }
+
+ public String getAction() {
+ return action;
+ }
+
+ public void setAction(String action) {
+ this.action = action;
+ }
+
+ public String getDelay() {
+ return delay;
+ }
+
+ public void setDelay(String delay) {
+ this.delay = delay;
+ }
+
+ public String getTimeout() {
+ return timeout;
+ }
+
+ public void setTimeout(String timeout) {
+ this.timeout = timeout;
+ }
+ }
+
+ public static class IKEConf extends Request {
+
+ /** IKE 共享密钥 */
+ @NotEmpty
+ @UCloudParam("PreSharedKey")
+ private String preSharedKey;
+
+ /** IKE 版本,取值: "ike v1","ike v2" */
+ @NotEmpty
+ @UCloudParam("Version")
+ private String version;
+
+ /** IKE 协商模式,主模式(main)/野蛮模式(aggressive),IKE V2时不使用该参数 */
+ @NotEmpty
+ @UCloudParam("ExchangeMode")
+ private String exchangeMode;
+
+ /** IKE 加密算法,取值:"aes128", "aes192", "aes256", "aes512", "3des" */
+ @NotEmpty
+ @UCloudParam("EncryptionAlgorithm")
+ private String encryptionAlgorithm;
+
+ /** IKE 认证算法,取值:"md5", "sha1", "sha2-256" */
+ @NotEmpty
+ @UCloudParam("AuthenticationAlgorithm")
+ private String authenticationAlgorithm;
+
+ /** DH group,指定IKE交换密钥时使用的DH组。取值:"1", "2", "5", "14", "15", "16" */
+ @NotEmpty
+ @UCloudParam("DhGroup")
+ private String dhGroup;
+
+ /** 本端标识,取值:“auto”,“ 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.uwsc.models;
+
+
+
+import cn.ucloud.common.response.Response;
+
+public class UpdateCETunnelResponse extends Response {}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdatePOPGWAttributeRequest.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdatePOPGWAttributeRequest.java
new file mode 100644
index 00000000..597e2b2e
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdatePOPGWAttributeRequest.java
@@ -0,0 +1,98 @@
+/**
+ * Copyright 2021 UCloud Technology Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package cn.ucloud.uwsc.models;
+
+
+import cn.ucloud.common.annotation.NotEmpty;
+import cn.ucloud.common.annotation.UCloudParam;
+import cn.ucloud.common.request.Request;
+
+public class UpdatePOPGWAttributeRequest extends Request {
+
+ /** 地域。 参见 [地域和可用区列表](https://docs.ucloud.cn/api/summary/regionlist) */
+ @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;
+
+ /** UWAN虚拟路由器资源ID */
+ @NotEmpty
+ @UCloudParam("PopGwId")
+ private String popGwId;
+
+ /** 资源名称 */
+ @UCloudParam("Name")
+ private String name;
+
+ /** 备注 */
+ @UCloudParam("Remark")
+ private String remark;
+
+ 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 getPopGwId() {
+ return popGwId;
+ }
+
+ public void setPopGwId(String popGwId) {
+ this.popGwId = popGwId;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+}
diff --git a/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdatePOPGWAttributeResponse.java b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdatePOPGWAttributeResponse.java
new file mode 100644
index 00000000..3ce69706
--- /dev/null
+++ b/ucloud-sdk-java-uwsc/src/main/java/cn/ucloud/uwsc/models/UpdatePOPGWAttributeResponse.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.uwsc.models;
+
+
+import cn.ucloud.common.response.Response;
+
+import com.google.gson.annotations.SerializedName;
+
+public class UpdatePOPGWAttributeResponse extends Response {
+
+ /** 请求 ID */
+ @SerializedName("RequestId")
+ private String requestId;
+
+ public String getRequestId() {
+ return requestId;
+ }
+
+ public void setRequestId(String requestId) {
+ this.requestId = requestId;
+ }
+}
diff --git a/ucloud-sdk-java-vpc/pom.xml b/ucloud-sdk-java-vpc/pom.xml
index 8464bfd5..1b1f41bd 100644
--- a/ucloud-sdk-java-vpc/pom.xml
+++ b/ucloud-sdk-java-vpc/pom.xml
@@ -5,19 +5,19 @@