All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.ec2.model.AvailabilityZone Maven / Gradle / Ivy

/*
 * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. 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. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file 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.amazonaws.services.ec2.model;

import java.io.Serializable;
import javax.annotation.Generated;

/**
 * 

* Describes Availability Zones, Local Zones, and Wavelength Zones. *

* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AvailabilityZone implements Serializable, Cloneable { /** *

* The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always available. *

*/ private String state; /** *

* For Availability Zones, this parameter always has the value of opt-in-not-required. *

*

* For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible values are * opted-in, and not-opted-in. *

*/ private String optInStatus; /** *

* Any messages about the Availability Zone, Local Zone, or Wavelength Zone. *

*/ private com.amazonaws.internal.SdkInternalList messages; /** *

* The name of the Region. *

*/ private String regionName; /** *

* The name of the Availability Zone, Local Zone, or Wavelength Zone. *

*/ private String zoneName; /** *

* The ID of the Availability Zone, Local Zone, or Wavelength Zone. *

*/ private String zoneId; /** *

* For Availability Zones, this parameter has the same value as the Region name. *

*

* For Local Zones, the name of the associated group, for example us-west-2-lax-1. *

*

* For Wavelength Zones, the name of the associated group, for example us-east-1-wl1-bos-wlz-1. *

*/ private String groupName; /** *

* The name of the network border group. *

*/ private String networkBorderGroup; /** *

* The type of zone. The valid values are availability-zone, local-zone, and * wavelength-zone. *

*/ private String zoneType; /** *

* The name of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such as API * calls. *

*/ private String parentZoneName; /** *

* The ID of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such as API * calls. *

*/ private String parentZoneId; /** *

* The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always available. *

* * @param state * The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always * available. * @see AvailabilityZoneState */ public void setState(String state) { this.state = state; } /** *

* The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always available. *

* * @return The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always * available. * @see AvailabilityZoneState */ public String getState() { return this.state; } /** *

* The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always available. *

* * @param state * The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always * available. * @return Returns a reference to this object so that method calls can be chained together. * @see AvailabilityZoneState */ public AvailabilityZone withState(String state) { setState(state); return this; } /** *

* The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always available. *

* * @param state * The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always * available. * @see AvailabilityZoneState */ public void setState(AvailabilityZoneState state) { withState(state); } /** *

* The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always available. *

* * @param state * The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always * available. * @return Returns a reference to this object so that method calls can be chained together. * @see AvailabilityZoneState */ public AvailabilityZone withState(AvailabilityZoneState state) { this.state = state.toString(); return this; } /** *

* For Availability Zones, this parameter always has the value of opt-in-not-required. *

*

* For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible values are * opted-in, and not-opted-in. *

* * @param optInStatus * For Availability Zones, this parameter always has the value of opt-in-not-required.

*

* For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible values are * opted-in, and not-opted-in. * @see AvailabilityZoneOptInStatus */ public void setOptInStatus(String optInStatus) { this.optInStatus = optInStatus; } /** *

* For Availability Zones, this parameter always has the value of opt-in-not-required. *

*

* For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible values are * opted-in, and not-opted-in. *

* * @return For Availability Zones, this parameter always has the value of opt-in-not-required.

*

* For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible values are * opted-in, and not-opted-in. * @see AvailabilityZoneOptInStatus */ public String getOptInStatus() { return this.optInStatus; } /** *

* For Availability Zones, this parameter always has the value of opt-in-not-required. *

*

* For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible values are * opted-in, and not-opted-in. *

* * @param optInStatus * For Availability Zones, this parameter always has the value of opt-in-not-required.

*

* For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible values are * opted-in, and not-opted-in. * @return Returns a reference to this object so that method calls can be chained together. * @see AvailabilityZoneOptInStatus */ public AvailabilityZone withOptInStatus(String optInStatus) { setOptInStatus(optInStatus); return this; } /** *

* For Availability Zones, this parameter always has the value of opt-in-not-required. *

*

* For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible values are * opted-in, and not-opted-in. *

* * @param optInStatus * For Availability Zones, this parameter always has the value of opt-in-not-required.

*

* For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible values are * opted-in, and not-opted-in. * @see AvailabilityZoneOptInStatus */ public void setOptInStatus(AvailabilityZoneOptInStatus optInStatus) { withOptInStatus(optInStatus); } /** *

* For Availability Zones, this parameter always has the value of opt-in-not-required. *

*

* For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible values are * opted-in, and not-opted-in. *

* * @param optInStatus * For Availability Zones, this parameter always has the value of opt-in-not-required.

*

* For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible values are * opted-in, and not-opted-in. * @return Returns a reference to this object so that method calls can be chained together. * @see AvailabilityZoneOptInStatus */ public AvailabilityZone withOptInStatus(AvailabilityZoneOptInStatus optInStatus) { this.optInStatus = optInStatus.toString(); return this; } /** *

* Any messages about the Availability Zone, Local Zone, or Wavelength Zone. *

* * @return Any messages about the Availability Zone, Local Zone, or Wavelength Zone. */ public java.util.List getMessages() { if (messages == null) { messages = new com.amazonaws.internal.SdkInternalList(); } return messages; } /** *

* Any messages about the Availability Zone, Local Zone, or Wavelength Zone. *

* * @param messages * Any messages about the Availability Zone, Local Zone, or Wavelength Zone. */ public void setMessages(java.util.Collection messages) { if (messages == null) { this.messages = null; return; } this.messages = new com.amazonaws.internal.SdkInternalList(messages); } /** *

* Any messages about the Availability Zone, Local Zone, or Wavelength Zone. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setMessages(java.util.Collection)} or {@link #withMessages(java.util.Collection)} if you want to override * the existing values. *

* * @param messages * Any messages about the Availability Zone, Local Zone, or Wavelength Zone. * @return Returns a reference to this object so that method calls can be chained together. */ public AvailabilityZone withMessages(AvailabilityZoneMessage... messages) { if (this.messages == null) { setMessages(new com.amazonaws.internal.SdkInternalList(messages.length)); } for (AvailabilityZoneMessage ele : messages) { this.messages.add(ele); } return this; } /** *

* Any messages about the Availability Zone, Local Zone, or Wavelength Zone. *

* * @param messages * Any messages about the Availability Zone, Local Zone, or Wavelength Zone. * @return Returns a reference to this object so that method calls can be chained together. */ public AvailabilityZone withMessages(java.util.Collection messages) { setMessages(messages); return this; } /** *

* The name of the Region. *

* * @param regionName * The name of the Region. */ public void setRegionName(String regionName) { this.regionName = regionName; } /** *

* The name of the Region. *

* * @return The name of the Region. */ public String getRegionName() { return this.regionName; } /** *

* The name of the Region. *

* * @param regionName * The name of the Region. * @return Returns a reference to this object so that method calls can be chained together. */ public AvailabilityZone withRegionName(String regionName) { setRegionName(regionName); return this; } /** *

* The name of the Availability Zone, Local Zone, or Wavelength Zone. *

* * @param zoneName * The name of the Availability Zone, Local Zone, or Wavelength Zone. */ public void setZoneName(String zoneName) { this.zoneName = zoneName; } /** *

* The name of the Availability Zone, Local Zone, or Wavelength Zone. *

* * @return The name of the Availability Zone, Local Zone, or Wavelength Zone. */ public String getZoneName() { return this.zoneName; } /** *

* The name of the Availability Zone, Local Zone, or Wavelength Zone. *

* * @param zoneName * The name of the Availability Zone, Local Zone, or Wavelength Zone. * @return Returns a reference to this object so that method calls can be chained together. */ public AvailabilityZone withZoneName(String zoneName) { setZoneName(zoneName); return this; } /** *

* The ID of the Availability Zone, Local Zone, or Wavelength Zone. *

* * @param zoneId * The ID of the Availability Zone, Local Zone, or Wavelength Zone. */ public void setZoneId(String zoneId) { this.zoneId = zoneId; } /** *

* The ID of the Availability Zone, Local Zone, or Wavelength Zone. *

* * @return The ID of the Availability Zone, Local Zone, or Wavelength Zone. */ public String getZoneId() { return this.zoneId; } /** *

* The ID of the Availability Zone, Local Zone, or Wavelength Zone. *

* * @param zoneId * The ID of the Availability Zone, Local Zone, or Wavelength Zone. * @return Returns a reference to this object so that method calls can be chained together. */ public AvailabilityZone withZoneId(String zoneId) { setZoneId(zoneId); return this; } /** *

* For Availability Zones, this parameter has the same value as the Region name. *

*

* For Local Zones, the name of the associated group, for example us-west-2-lax-1. *

*

* For Wavelength Zones, the name of the associated group, for example us-east-1-wl1-bos-wlz-1. *

* * @param groupName * For Availability Zones, this parameter has the same value as the Region name.

*

* For Local Zones, the name of the associated group, for example us-west-2-lax-1. *

*

* For Wavelength Zones, the name of the associated group, for example us-east-1-wl1-bos-wlz-1. */ public void setGroupName(String groupName) { this.groupName = groupName; } /** *

* For Availability Zones, this parameter has the same value as the Region name. *

*

* For Local Zones, the name of the associated group, for example us-west-2-lax-1. *

*

* For Wavelength Zones, the name of the associated group, for example us-east-1-wl1-bos-wlz-1. *

* * @return For Availability Zones, this parameter has the same value as the Region name.

*

* For Local Zones, the name of the associated group, for example us-west-2-lax-1. *

*

* For Wavelength Zones, the name of the associated group, for example us-east-1-wl1-bos-wlz-1. */ public String getGroupName() { return this.groupName; } /** *

* For Availability Zones, this parameter has the same value as the Region name. *

*

* For Local Zones, the name of the associated group, for example us-west-2-lax-1. *

*

* For Wavelength Zones, the name of the associated group, for example us-east-1-wl1-bos-wlz-1. *

* * @param groupName * For Availability Zones, this parameter has the same value as the Region name.

*

* For Local Zones, the name of the associated group, for example us-west-2-lax-1. *

*

* For Wavelength Zones, the name of the associated group, for example us-east-1-wl1-bos-wlz-1. * @return Returns a reference to this object so that method calls can be chained together. */ public AvailabilityZone withGroupName(String groupName) { setGroupName(groupName); return this; } /** *

* The name of the network border group. *

* * @param networkBorderGroup * The name of the network border group. */ public void setNetworkBorderGroup(String networkBorderGroup) { this.networkBorderGroup = networkBorderGroup; } /** *

* The name of the network border group. *

* * @return The name of the network border group. */ public String getNetworkBorderGroup() { return this.networkBorderGroup; } /** *

* The name of the network border group. *

* * @param networkBorderGroup * The name of the network border group. * @return Returns a reference to this object so that method calls can be chained together. */ public AvailabilityZone withNetworkBorderGroup(String networkBorderGroup) { setNetworkBorderGroup(networkBorderGroup); return this; } /** *

* The type of zone. The valid values are availability-zone, local-zone, and * wavelength-zone. *

* * @param zoneType * The type of zone. The valid values are availability-zone, local-zone, and * wavelength-zone. */ public void setZoneType(String zoneType) { this.zoneType = zoneType; } /** *

* The type of zone. The valid values are availability-zone, local-zone, and * wavelength-zone. *

* * @return The type of zone. The valid values are availability-zone, local-zone, and * wavelength-zone. */ public String getZoneType() { return this.zoneType; } /** *

* The type of zone. The valid values are availability-zone, local-zone, and * wavelength-zone. *

* * @param zoneType * The type of zone. The valid values are availability-zone, local-zone, and * wavelength-zone. * @return Returns a reference to this object so that method calls can be chained together. */ public AvailabilityZone withZoneType(String zoneType) { setZoneType(zoneType); return this; } /** *

* The name of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such as API * calls. *

* * @param parentZoneName * The name of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such * as API calls. */ public void setParentZoneName(String parentZoneName) { this.parentZoneName = parentZoneName; } /** *

* The name of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such as API * calls. *

* * @return The name of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, * such as API calls. */ public String getParentZoneName() { return this.parentZoneName; } /** *

* The name of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such as API * calls. *

* * @param parentZoneName * The name of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such * as API calls. * @return Returns a reference to this object so that method calls can be chained together. */ public AvailabilityZone withParentZoneName(String parentZoneName) { setParentZoneName(parentZoneName); return this; } /** *

* The ID of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such as API * calls. *

* * @param parentZoneId * The ID of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such * as API calls. */ public void setParentZoneId(String parentZoneId) { this.parentZoneId = parentZoneId; } /** *

* The ID of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such as API * calls. *

* * @return The ID of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such * as API calls. */ public String getParentZoneId() { return this.parentZoneId; } /** *

* The ID of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such as API * calls. *

* * @param parentZoneId * The ID of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such * as API calls. * @return Returns a reference to this object so that method calls can be chained together. */ public AvailabilityZone withParentZoneId(String parentZoneId) { setParentZoneId(parentZoneId); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getState() != null) sb.append("State: ").append(getState()).append(","); if (getOptInStatus() != null) sb.append("OptInStatus: ").append(getOptInStatus()).append(","); if (getMessages() != null) sb.append("Messages: ").append(getMessages()).append(","); if (getRegionName() != null) sb.append("RegionName: ").append(getRegionName()).append(","); if (getZoneName() != null) sb.append("ZoneName: ").append(getZoneName()).append(","); if (getZoneId() != null) sb.append("ZoneId: ").append(getZoneId()).append(","); if (getGroupName() != null) sb.append("GroupName: ").append(getGroupName()).append(","); if (getNetworkBorderGroup() != null) sb.append("NetworkBorderGroup: ").append(getNetworkBorderGroup()).append(","); if (getZoneType() != null) sb.append("ZoneType: ").append(getZoneType()).append(","); if (getParentZoneName() != null) sb.append("ParentZoneName: ").append(getParentZoneName()).append(","); if (getParentZoneId() != null) sb.append("ParentZoneId: ").append(getParentZoneId()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof AvailabilityZone == false) return false; AvailabilityZone other = (AvailabilityZone) obj; if (other.getState() == null ^ this.getState() == null) return false; if (other.getState() != null && other.getState().equals(this.getState()) == false) return false; if (other.getOptInStatus() == null ^ this.getOptInStatus() == null) return false; if (other.getOptInStatus() != null && other.getOptInStatus().equals(this.getOptInStatus()) == false) return false; if (other.getMessages() == null ^ this.getMessages() == null) return false; if (other.getMessages() != null && other.getMessages().equals(this.getMessages()) == false) return false; if (other.getRegionName() == null ^ this.getRegionName() == null) return false; if (other.getRegionName() != null && other.getRegionName().equals(this.getRegionName()) == false) return false; if (other.getZoneName() == null ^ this.getZoneName() == null) return false; if (other.getZoneName() != null && other.getZoneName().equals(this.getZoneName()) == false) return false; if (other.getZoneId() == null ^ this.getZoneId() == null) return false; if (other.getZoneId() != null && other.getZoneId().equals(this.getZoneId()) == false) return false; if (other.getGroupName() == null ^ this.getGroupName() == null) return false; if (other.getGroupName() != null && other.getGroupName().equals(this.getGroupName()) == false) return false; if (other.getNetworkBorderGroup() == null ^ this.getNetworkBorderGroup() == null) return false; if (other.getNetworkBorderGroup() != null && other.getNetworkBorderGroup().equals(this.getNetworkBorderGroup()) == false) return false; if (other.getZoneType() == null ^ this.getZoneType() == null) return false; if (other.getZoneType() != null && other.getZoneType().equals(this.getZoneType()) == false) return false; if (other.getParentZoneName() == null ^ this.getParentZoneName() == null) return false; if (other.getParentZoneName() != null && other.getParentZoneName().equals(this.getParentZoneName()) == false) return false; if (other.getParentZoneId() == null ^ this.getParentZoneId() == null) return false; if (other.getParentZoneId() != null && other.getParentZoneId().equals(this.getParentZoneId()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getState() == null) ? 0 : getState().hashCode()); hashCode = prime * hashCode + ((getOptInStatus() == null) ? 0 : getOptInStatus().hashCode()); hashCode = prime * hashCode + ((getMessages() == null) ? 0 : getMessages().hashCode()); hashCode = prime * hashCode + ((getRegionName() == null) ? 0 : getRegionName().hashCode()); hashCode = prime * hashCode + ((getZoneName() == null) ? 0 : getZoneName().hashCode()); hashCode = prime * hashCode + ((getZoneId() == null) ? 0 : getZoneId().hashCode()); hashCode = prime * hashCode + ((getGroupName() == null) ? 0 : getGroupName().hashCode()); hashCode = prime * hashCode + ((getNetworkBorderGroup() == null) ? 0 : getNetworkBorderGroup().hashCode()); hashCode = prime * hashCode + ((getZoneType() == null) ? 0 : getZoneType().hashCode()); hashCode = prime * hashCode + ((getParentZoneName() == null) ? 0 : getParentZoneName().hashCode()); hashCode = prime * hashCode + ((getParentZoneId() == null) ? 0 : getParentZoneId().hashCode()); return hashCode; } @Override public AvailabilityZone clone() { try { return (AvailabilityZone) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy