![JAR search and dependency download from the Maven repository](/logo.png)
com.tencentcloudapi.teo.v20220901.models.CreateOriginGroupRequest Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of tencentcloud-sdk-java-intl-en Show documentation
Show all versions of tencentcloud-sdk-java-intl-en Show documentation
Tencent Cloud API SDK for Java
/*
* Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
*
* 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 com.tencentcloudapi.teo.v20220901.models;
import com.tencentcloudapi.common.AbstractModel;
import com.tencentcloudapi.common.SSEResponseModel;
import com.google.gson.annotations.SerializedName;
import com.google.gson.annotations.Expose;
import java.util.HashMap;
public class CreateOriginGroupRequest extends AbstractModel {
/**
* Site ID
*/
@SerializedName("ZoneId")
@Expose
private String ZoneId;
/**
* Origin group name. It can contain 1 to 200 characters ([a-z], [A-Z], [0-9] and [_-]).
*/
@SerializedName("Name")
@Expose
private String Name;
/**
* (Required) Origin group type. Values:
`GENERAL`: General origin groups. It supports IPs and domain names. It can be referenced by DNS, Rule Engine, Layer 4 Proxy and General LoadBalancer.
`HTTP`: HTTP-specific origin groups. It supports IPs/domain names and object storage buckets. It can be referenced by acceleration domain names, rule engines and HTTP LoadBalancer. It cannot be referenced by L4 proxies.
*/
@SerializedName("Type")
@Expose
private String Type;
/**
* (Required) Origins in the origin group.
*/
@SerializedName("Records")
@Expose
private OriginRecord [] Records;
/**
* Host header used for origin-pull. It only works when `Type=HTTP`. The `HostHeader` specified in `RuleEngine` takes a higher priority over this configuration.
*/
@SerializedName("HostHeader")
@Expose
private String HostHeader;
/**
* Get Site ID
* @return ZoneId Site ID
*/
public String getZoneId() {
return this.ZoneId;
}
/**
* Set Site ID
* @param ZoneId Site ID
*/
public void setZoneId(String ZoneId) {
this.ZoneId = ZoneId;
}
/**
* Get Origin group name. It can contain 1 to 200 characters ([a-z], [A-Z], [0-9] and [_-]).
* @return Name Origin group name. It can contain 1 to 200 characters ([a-z], [A-Z], [0-9] and [_-]).
*/
public String getName() {
return this.Name;
}
/**
* Set Origin group name. It can contain 1 to 200 characters ([a-z], [A-Z], [0-9] and [_-]).
* @param Name Origin group name. It can contain 1 to 200 characters ([a-z], [A-Z], [0-9] and [_-]).
*/
public void setName(String Name) {
this.Name = Name;
}
/**
* Get (Required) Origin group type. Values:
`GENERAL`: General origin groups. It supports IPs and domain names. It can be referenced by DNS, Rule Engine, Layer 4 Proxy and General LoadBalancer.
`HTTP`: HTTP-specific origin groups. It supports IPs/domain names and object storage buckets. It can be referenced by acceleration domain names, rule engines and HTTP LoadBalancer. It cannot be referenced by L4 proxies.
* @return Type (Required) Origin group type. Values:
`GENERAL`: General origin groups. It supports IPs and domain names. It can be referenced by DNS, Rule Engine, Layer 4 Proxy and General LoadBalancer.
`HTTP`: HTTP-specific origin groups. It supports IPs/domain names and object storage buckets. It can be referenced by acceleration domain names, rule engines and HTTP LoadBalancer. It cannot be referenced by L4 proxies.
*/
public String getType() {
return this.Type;
}
/**
* Set (Required) Origin group type. Values:
`GENERAL`: General origin groups. It supports IPs and domain names. It can be referenced by DNS, Rule Engine, Layer 4 Proxy and General LoadBalancer.
`HTTP`: HTTP-specific origin groups. It supports IPs/domain names and object storage buckets. It can be referenced by acceleration domain names, rule engines and HTTP LoadBalancer. It cannot be referenced by L4 proxies.
* @param Type (Required) Origin group type. Values:
`GENERAL`: General origin groups. It supports IPs and domain names. It can be referenced by DNS, Rule Engine, Layer 4 Proxy and General LoadBalancer.
`HTTP`: HTTP-specific origin groups. It supports IPs/domain names and object storage buckets. It can be referenced by acceleration domain names, rule engines and HTTP LoadBalancer. It cannot be referenced by L4 proxies.
*/
public void setType(String Type) {
this.Type = Type;
}
/**
* Get (Required) Origins in the origin group.
* @return Records (Required) Origins in the origin group.
*/
public OriginRecord [] getRecords() {
return this.Records;
}
/**
* Set (Required) Origins in the origin group.
* @param Records (Required) Origins in the origin group.
*/
public void setRecords(OriginRecord [] Records) {
this.Records = Records;
}
/**
* Get Host header used for origin-pull. It only works when `Type=HTTP`. The `HostHeader` specified in `RuleEngine` takes a higher priority over this configuration.
* @return HostHeader Host header used for origin-pull. It only works when `Type=HTTP`. The `HostHeader` specified in `RuleEngine` takes a higher priority over this configuration.
*/
public String getHostHeader() {
return this.HostHeader;
}
/**
* Set Host header used for origin-pull. It only works when `Type=HTTP`. The `HostHeader` specified in `RuleEngine` takes a higher priority over this configuration.
* @param HostHeader Host header used for origin-pull. It only works when `Type=HTTP`. The `HostHeader` specified in `RuleEngine` takes a higher priority over this configuration.
*/
public void setHostHeader(String HostHeader) {
this.HostHeader = HostHeader;
}
public CreateOriginGroupRequest() {
}
/**
* NOTE: Any ambiguous key set via .set("AnyKey", "value") will be a shallow copy,
* and any explicit key, i.e Foo, set via .setFoo("value") will be a deep copy.
*/
public CreateOriginGroupRequest(CreateOriginGroupRequest source) {
if (source.ZoneId != null) {
this.ZoneId = new String(source.ZoneId);
}
if (source.Name != null) {
this.Name = new String(source.Name);
}
if (source.Type != null) {
this.Type = new String(source.Type);
}
if (source.Records != null) {
this.Records = new OriginRecord[source.Records.length];
for (int i = 0; i < source.Records.length; i++) {
this.Records[i] = new OriginRecord(source.Records[i]);
}
}
if (source.HostHeader != null) {
this.HostHeader = new String(source.HostHeader);
}
}
/**
* Internal implementation, normal users should not use it.
*/
public void toMap(HashMap map, String prefix) {
this.setParamSimple(map, prefix + "ZoneId", this.ZoneId);
this.setParamSimple(map, prefix + "Name", this.Name);
this.setParamSimple(map, prefix + "Type", this.Type);
this.setParamArrayObj(map, prefix + "Records.", this.Records);
this.setParamSimple(map, prefix + "HostHeader", this.HostHeader);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy