All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.huaweicloud.sdk.geip.v3.model.BatchCreateInternetBandwidth Maven / Gradle / Ivy
package com.huaweicloud.sdk.geip.v3.model;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonValue;
import java.time.OffsetDateTime;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.function.Consumer;
/**
* BatchCreateInternetBandwidth
*/
public class BatchCreateInternetBandwidth {
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "id")
private String id;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "name")
private String name;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "isp")
private String isp;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "ingress_size")
private Integer ingressSize;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "access_site")
private String accessSite;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "size")
private Integer size;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "description")
private String description;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "charge_mode")
private String chargeMode;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "domain_id")
private String domainId;
/**
* 状态
*/
public static final class StatusEnum {
/**
* Enum NORMAL for value: "NORMAL"
*/
public static final StatusEnum NORMAL = new StatusEnum("NORMAL");
/**
* Enum FREEZED for value: "FREEZED"
*/
public static final StatusEnum FREEZED = new StatusEnum("FREEZED");
private static final Map STATIC_FIELDS = createStaticFields();
private static Map createStaticFields() {
Map map = new HashMap<>();
map.put("NORMAL", NORMAL);
map.put("FREEZED", FREEZED);
return Collections.unmodifiableMap(map);
}
private String value;
StatusEnum(String value) {
this.value = value;
}
@JsonValue
public String getValue() {
return value;
}
@Override
public String toString() {
return String.valueOf(value);
}
@JsonCreator
public static StatusEnum fromValue(String value) {
if (value == null) {
return null;
}
return java.util.Optional.ofNullable(STATIC_FIELDS.get(value)).orElse(new StatusEnum(value));
}
public static StatusEnum valueOf(String value) {
if (value == null) {
return null;
}
return java.util.Optional.ofNullable(STATIC_FIELDS.get(value))
.orElseThrow(() -> new IllegalArgumentException("Unexpected value '" + value + "'"));
}
@Override
public boolean equals(Object obj) {
if (obj instanceof StatusEnum) {
return this.value.equals(((StatusEnum) obj).value);
}
return false;
}
@Override
public int hashCode() {
return this.value.hashCode();
}
}
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "status")
private StatusEnum status;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "created_at")
private OffsetDateTime createdAt;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "updated_at")
private OffsetDateTime updatedAt;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "ret_status")
private String retStatus;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "tags")
private List tags = null;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "sys_tags")
private List sysTags = null;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "enterprise_project_id")
private String enterpriseProjectId;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "type")
private String type;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "lock_infos")
private List lockInfos = null;
public BatchCreateInternetBandwidth withId(String id) {
this.id = id;
return this;
}
/**
* 全域公网带宽的ID
* @return id
*/
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public BatchCreateInternetBandwidth withName(String name) {
this.name = name;
return this;
}
/**
* - 功能说明:全域公网带宽名称 - 取值范围:1-64,支持数字、字母、中文、_(下划线)、-(中划线)、.(点)
* @return name
*/
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public BatchCreateInternetBandwidth withIsp(String isp) {
this.isp = isp;
return this;
}
/**
* 全域弹性公网IP所属线路
* @return isp
*/
public String getIsp() {
return isp;
}
public void setIsp(String isp) {
this.isp = isp;
}
public BatchCreateInternetBandwidth withIngressSize(Integer ingressSize) {
this.ingressSize = ingressSize;
return this;
}
/**
* 全域公网带宽大小(入云方向)
* @return ingressSize
*/
public Integer getIngressSize() {
return ingressSize;
}
public void setIngressSize(Integer ingressSize) {
this.ingressSize = ingressSize;
}
public BatchCreateInternetBandwidth withAccessSite(String accessSite) {
this.accessSite = accessSite;
return this;
}
/**
* 接入点信息
* @return accessSite
*/
public String getAccessSite() {
return accessSite;
}
public void setAccessSite(String accessSite) {
this.accessSite = accessSite;
}
public BatchCreateInternetBandwidth withSize(Integer size) {
this.size = size;
return this;
}
/**
* 全域公网带宽大小(出云方向)
* @return size
*/
public Integer getSize() {
return size;
}
public void setSize(Integer size) {
this.size = size;
}
public BatchCreateInternetBandwidth withDescription(String description) {
this.description = description;
return this;
}
/**
* - 功能说明:用户自定义的资源描述 - 约束: - 值的长度最大512字符,由数字、字母、中文、_(下划线)、-(中划线)、.(点)组成。
* @return description
*/
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public BatchCreateInternetBandwidth withChargeMode(String chargeMode) {
this.chargeMode = chargeMode;
return this;
}
/**
* 计费模式
* @return chargeMode
*/
public String getChargeMode() {
return chargeMode;
}
public void setChargeMode(String chargeMode) {
this.chargeMode = chargeMode;
}
public BatchCreateInternetBandwidth withDomainId(String domainId) {
this.domainId = domainId;
return this;
}
/**
* - 租户账号ID,获取租户账号ID请参见[租户账号ID](https://support.huaweicloud.com/api-iam/iam_17_0002.html)
* @return domainId
*/
public String getDomainId() {
return domainId;
}
public void setDomainId(String domainId) {
this.domainId = domainId;
}
public BatchCreateInternetBandwidth withStatus(StatusEnum status) {
this.status = status;
return this;
}
/**
* 状态
* @return status
*/
public StatusEnum getStatus() {
return status;
}
public void setStatus(StatusEnum status) {
this.status = status;
}
public BatchCreateInternetBandwidth withCreatedAt(OffsetDateTime createdAt) {
this.createdAt = createdAt;
return this;
}
/**
* 创建时间
* @return createdAt
*/
public OffsetDateTime getCreatedAt() {
return createdAt;
}
public void setCreatedAt(OffsetDateTime createdAt) {
this.createdAt = createdAt;
}
public BatchCreateInternetBandwidth withUpdatedAt(OffsetDateTime updatedAt) {
this.updatedAt = updatedAt;
return this;
}
/**
* 更新时间
* @return updatedAt
*/
public OffsetDateTime getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(OffsetDateTime updatedAt) {
this.updatedAt = updatedAt;
}
public BatchCreateInternetBandwidth withRetStatus(String retStatus) {
this.retStatus = retStatus;
return this;
}
/**
* 是否创建成功标识,取值:successful、failed。
* @return retStatus
*/
public String getRetStatus() {
return retStatus;
}
public void setRetStatus(String retStatus) {
this.retStatus = retStatus;
}
public BatchCreateInternetBandwidth withTags(List tags) {
this.tags = tags;
return this;
}
public BatchCreateInternetBandwidth addTagsItem(Tag tagsItem) {
if (this.tags == null) {
this.tags = new ArrayList<>();
}
this.tags.add(tagsItem);
return this;
}
public BatchCreateInternetBandwidth withTags(Consumer> tagsSetter) {
if (this.tags == null) {
this.tags = new ArrayList<>();
}
tagsSetter.accept(this.tags);
return this;
}
/**
* 全域公网带宽标签
* @return tags
*/
public List getTags() {
return tags;
}
public void setTags(List tags) {
this.tags = tags;
}
public BatchCreateInternetBandwidth withSysTags(List sysTags) {
this.sysTags = sysTags;
return this;
}
public BatchCreateInternetBandwidth addSysTagsItem(Tag sysTagsItem) {
if (this.sysTags == null) {
this.sysTags = new ArrayList<>();
}
this.sysTags.add(sysTagsItem);
return this;
}
public BatchCreateInternetBandwidth withSysTags(Consumer> sysTagsSetter) {
if (this.sysTags == null) {
this.sysTags = new ArrayList<>();
}
sysTagsSetter.accept(this.sysTags);
return this;
}
/**
* 系统标签
* @return sysTags
*/
public List getSysTags() {
return sysTags;
}
public void setSysTags(List sysTags) {
this.sysTags = sysTags;
}
public BatchCreateInternetBandwidth withEnterpriseProjectId(String enterpriseProjectId) {
this.enterpriseProjectId = enterpriseProjectId;
return this;
}
/**
* - 企业项目ID。最大长度36字节,带“-”连字符的UUID格式,或者是字符串“0”。 - 创建全域弹性公网IP时,给全域弹性公网IP绑定企业项目ID。 - 不指定该参数时,默认值是 0 - 关于企业项目ID的获取及企业项目特性的详细信息,请参见[《企业管理用户指南》](https://support.huaweicloud.com/usermanual-em/zh-cn_topic_0126101490.html)。
* @return enterpriseProjectId
*/
public String getEnterpriseProjectId() {
return enterpriseProjectId;
}
public void setEnterpriseProjectId(String enterpriseProjectId) {
this.enterpriseProjectId = enterpriseProjectId;
}
public BatchCreateInternetBandwidth withType(String type) {
this.type = type;
return this;
}
/**
* 全域公网带宽类型
* @return type
*/
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public BatchCreateInternetBandwidth withLockInfos(List lockInfos) {
this.lockInfos = lockInfos;
return this;
}
public BatchCreateInternetBandwidth addLockInfosItem(LockInfo lockInfosItem) {
if (this.lockInfos == null) {
this.lockInfos = new ArrayList<>();
}
this.lockInfos.add(lockInfosItem);
return this;
}
public BatchCreateInternetBandwidth withLockInfos(Consumer> lockInfosSetter) {
if (this.lockInfos == null) {
this.lockInfos = new ArrayList<>();
}
lockInfosSetter.accept(this.lockInfos);
return this;
}
/**
* 全域公网带宽资源的锁状态
* @return lockInfos
*/
public List getLockInfos() {
return lockInfos;
}
public void setLockInfos(List lockInfos) {
this.lockInfos = lockInfos;
}
@Override
public boolean equals(java.lang.Object obj) {
if (this == obj) {
return true;
}
if (obj == null || getClass() != obj.getClass()) {
return false;
}
BatchCreateInternetBandwidth that = (BatchCreateInternetBandwidth) obj;
return Objects.equals(this.id, that.id) && Objects.equals(this.name, that.name)
&& Objects.equals(this.isp, that.isp) && Objects.equals(this.ingressSize, that.ingressSize)
&& Objects.equals(this.accessSite, that.accessSite) && Objects.equals(this.size, that.size)
&& Objects.equals(this.description, that.description) && Objects.equals(this.chargeMode, that.chargeMode)
&& Objects.equals(this.domainId, that.domainId) && Objects.equals(this.status, that.status)
&& Objects.equals(this.createdAt, that.createdAt) && Objects.equals(this.updatedAt, that.updatedAt)
&& Objects.equals(this.retStatus, that.retStatus) && Objects.equals(this.tags, that.tags)
&& Objects.equals(this.sysTags, that.sysTags)
&& Objects.equals(this.enterpriseProjectId, that.enterpriseProjectId)
&& Objects.equals(this.type, that.type) && Objects.equals(this.lockInfos, that.lockInfos);
}
@Override
public int hashCode() {
return Objects.hash(id,
name,
isp,
ingressSize,
accessSite,
size,
description,
chargeMode,
domainId,
status,
createdAt,
updatedAt,
retStatus,
tags,
sysTags,
enterpriseProjectId,
type,
lockInfos);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class BatchCreateInternetBandwidth {\n");
sb.append(" id: ").append(toIndentedString(id)).append("\n");
sb.append(" name: ").append(toIndentedString(name)).append("\n");
sb.append(" isp: ").append(toIndentedString(isp)).append("\n");
sb.append(" ingressSize: ").append(toIndentedString(ingressSize)).append("\n");
sb.append(" accessSite: ").append(toIndentedString(accessSite)).append("\n");
sb.append(" size: ").append(toIndentedString(size)).append("\n");
sb.append(" description: ").append(toIndentedString(description)).append("\n");
sb.append(" chargeMode: ").append(toIndentedString(chargeMode)).append("\n");
sb.append(" domainId: ").append(toIndentedString(domainId)).append("\n");
sb.append(" status: ").append(toIndentedString(status)).append("\n");
sb.append(" createdAt: ").append(toIndentedString(createdAt)).append("\n");
sb.append(" updatedAt: ").append(toIndentedString(updatedAt)).append("\n");
sb.append(" retStatus: ").append(toIndentedString(retStatus)).append("\n");
sb.append(" tags: ").append(toIndentedString(tags)).append("\n");
sb.append(" sysTags: ").append(toIndentedString(sysTags)).append("\n");
sb.append(" enterpriseProjectId: ").append(toIndentedString(enterpriseProjectId)).append("\n");
sb.append(" type: ").append(toIndentedString(type)).append("\n");
sb.append(" lockInfos: ").append(toIndentedString(lockInfos)).append("\n");
sb.append("}");
return sb.toString();
}
/**
* Convert the given object to string with each line indented by 4 spaces
* (except the first line).
*/
private String toIndentedString(java.lang.Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
}