@Generated(value="OracleSDKGenerator", comments="API Version: 20180115") public final class SteeringPolicy extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel
A DNS steering policy.
*Warning:** Oracle recommends that you avoid using any confidential information when you
supply string values using the API.
Note: Objects should always be created or deserialized using the SteeringPolicy.Builder
. This model
distinguishes fields that are null
because they are unset from fields that are explicitly
set to null
. This is done in the setter methods of the SteeringPolicy.Builder
, which maintain a
set of all explicitly set fields called SteeringPolicy.Builder.__explicitlySet__
. The hashCode()
and equals(Object)
methods are implemented to take the explicitly set
fields into account. The constructor, on the other hand, does not take the explicitly set fields
into account (since the constructor cannot distinguish explicit null
from unset null
).
Modifier and Type | Class and Description |
---|---|
static class |
SteeringPolicy.Builder |
static class |
SteeringPolicy.LifecycleState
The current state of the resource.
|
static class |
SteeringPolicy.Template
A set of predefined rules based on the desired purpose of the steering policy.
|
EXPLICITLY_SET_FILTER_NAME, EXPLICITLY_SET_PROPERTY_NAME
Constructor and Description |
---|
SteeringPolicy(String compartmentId,
String displayName,
Integer ttl,
String healthCheckMonitorId,
SteeringPolicy.Template template,
Map<String,String> freeformTags,
Map<String,Map<String,Object>> definedTags,
List<SteeringPolicyAnswer> answers,
List<SteeringPolicyRule> rules,
String self,
String id,
Date timeCreated,
SteeringPolicy.LifecycleState lifecycleState)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
static SteeringPolicy.Builder |
builder()
Create a new builder.
|
boolean |
equals(Object o) |
List<SteeringPolicyAnswer> |
getAnswers()
The set of all answers that can potentially issue from the steering policy.
|
String |
getCompartmentId()
The OCID of the compartment containing the steering policy.
|
Map<String,Map<String,Object>> |
getDefinedTags()
Defined tags for this resource.
|
String |
getDisplayName()
A user-friendly name for the steering policy.
|
Map<String,String> |
getFreeformTags()
Free-form tags for this resource.
|
String |
getHealthCheckMonitorId()
The OCID of the health check monitor providing health data about the answers of the steering
policy.
|
String |
getId()
The OCID of the resource.
|
SteeringPolicy.LifecycleState |
getLifecycleState()
The current state of the resource.
|
List<SteeringPolicyRule> |
getRules()
The series of rules that will be processed in sequence to reduce the pool of answers to a
response for any given request.
|
String |
getSelf()
The canonical absolute URL of the resource.
|
SteeringPolicy.Template |
getTemplate()
A set of predefined rules based on the desired purpose of the steering policy.
|
Date |
getTimeCreated()
The date and time the resource was created, expressed in RFC 3339 timestamp format.
|
Integer |
getTtl()
The Time To Live (TTL) for responses from the steering policy, in seconds.
|
int |
hashCode() |
SteeringPolicy.Builder |
toBuilder() |
String |
toString() |
String |
toString(boolean includeByteArrayContents)
Return a string representation of the object.
|
markPropertyAsExplicitlySet, wasPropertyExplicitlySet
@Deprecated @ConstructorProperties(value={"compartmentId","displayName","ttl","healthCheckMonitorId","template","freeformTags","definedTags","answers","rules","self","id","timeCreated","lifecycleState"}) public SteeringPolicy(String compartmentId, String displayName, Integer ttl, String healthCheckMonitorId, SteeringPolicy.Template template, Map<String,String> freeformTags, Map<String,Map<String,Object>> definedTags, List<SteeringPolicyAnswer> answers, List<SteeringPolicyRule> rules, String self, String id, Date timeCreated, SteeringPolicy.LifecycleState lifecycleState)
public static SteeringPolicy.Builder builder()
Create a new builder.
public SteeringPolicy.Builder toBuilder()
public String getCompartmentId()
The OCID of the compartment containing the steering policy.
public String getDisplayName()
A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
public Integer getTtl()
The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.
public String getHealthCheckMonitorId()
The OCID of the health check monitor providing health data about the answers of the steering
policy. A steering policy answer with rdata
matching a monitored endpoint will use
the health data of that endpoint. A steering policy answer with rdata
not matching
any monitored endpoint will be assumed healthy.
**Note:** To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see [Managing Health Checks](https://docs.cloud.oracle.com/iaas/Content/HealthChecks/Tasks/managinghealthchecks.htm).
public SteeringPolicy.Template getTemplate()
A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management’s rules in a different order to produce the desired results when answering DNS queries.
**Example:** The FAILOVER
template determines answers by filtering the policy's
answers using the FILTER
rule first, then the following rules in succession: HEALTH
, PRIORITY
, and LIMIT
. This gives the domain dynamic failover
capability.
It is **strongly recommended** to use a template other than CUSTOM
when creating a
steering policy.
All templates require the rule order to begin with an unconditional FILTER
rule
that keeps answers contingent upon answer.isDisabled != true
, except for CUSTOM
. A defined HEALTH
rule must follow the FILTER
rule if the policy
references a healthCheckMonitorId
. The last rule of a template must must be a LIMIT
rule. For more information about templates and code examples, see [Traffic Management
API
Guide](https://docs.cloud.oracle.com/iaas/Content/TrafficManagement/Concepts/trafficmanagementapi.htm).
*Template Types**
FAILOVER
- Uses health check information on your endpoints to determine which DNS
answers to serve. If an endpoint fails a health check, the answer for that endpoint will be
removed from the list of available answers until the endpoint is detected as healthy.
* LOAD_BALANCE
- Distributes web traffic to specified endpoints based on defined
weights.
* ROUTE_BY_GEO
- Answers DNS queries based on the query's geographic location. For
a list of geographic locations to route by, see [Traffic Management Geographic
Locations](https://docs.cloud.oracle.com/iaas/Content/TrafficManagement/Reference/trafficmanagementgeo.htm).
* ROUTE_BY_ASN
- Answers DNS queries based on the query's originating ASN.
* ROUTE_BY_IP
- Answers DNS queries based on the query's IP address.
* CUSTOM
- Allows a customized configuration of rules.
public Map<String,String> getFreeformTags()
Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
**Example:** {"Department": "Finance"}
public Map<String,Map<String,Object>> getDefinedTags()
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
**Example:** {"Operations": {"CostCenter": "42"}}
public List<SteeringPolicyAnswer> getAnswers()
The set of all answers that can potentially issue from the steering policy.
public List<SteeringPolicyRule> getRules()
The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.
The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.
public String getSelf()
The canonical absolute URL of the resource.
public String getId()
The OCID of the resource.
public Date getTimeCreated()
The date and time the resource was created, expressed in RFC 3339 timestamp format.
*Example:** 2016-07-22T17:23:59:60Z
public SteeringPolicy.LifecycleState getLifecycleState()
The current state of the resource.
public String toString()
toString
in class com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel
public String toString(boolean includeByteArrayContents)
Return a string representation of the object.
includeByteArrayContents
- true to include the full contents of byte arrayspublic boolean equals(Object o)
equals
in class com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel
public int hashCode()
hashCode
in class com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel
Copyright © 2016–2024. All rights reserved.