/* * 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; /** *
* In IPAM, a scope is the highest-level container within IPAM. An IPAM contains two default scopes. Each scope * represents the IP space for a single network. The private scope is intended for all private IP address space. The * public scope is intended for all public IP address space. Scopes enable you to reuse IP addresses across multiple * unconnected networks without causing IP address overlap or conflict. *
** For more information, see How IPAM * works in the Amazon VPC IPAM User Guide. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class IpamScope implements Serializable, Cloneable { /** ** The Amazon Web Services account ID of the owner of the scope. *
*/ private String ownerId; /** ** The ID of the scope. *
*/ private String ipamScopeId; /** ** The Amazon Resource Name (ARN) of the scope. *
*/ private String ipamScopeArn; /** ** The ARN of the IPAM. *
*/ private String ipamArn; /** ** The Amazon Web Services Region of the IPAM scope. *
*/ private String ipamRegion; /** ** The type of the scope. *
*/ private String ipamScopeType; /** ** Defines if the scope is the default scope or not. *
*/ private Boolean isDefault; /** ** The description of the scope. *
*/ private String description; /** ** The number of pools in the scope. *
*/ private Integer poolCount; /** ** The state of the IPAM scope. *
*/ private String state; /** *
* The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value
* as the filter value. For example, to find all resources that have a tag with the key Owner
and the
* value TeamA
, specify tag:Owner
for the filter name and TeamA
for the
* filter value.
*
* The Amazon Web Services account ID of the owner of the scope. *
* * @param ownerId * The Amazon Web Services account ID of the owner of the scope. */ public void setOwnerId(String ownerId) { this.ownerId = ownerId; } /** ** The Amazon Web Services account ID of the owner of the scope. *
* * @return The Amazon Web Services account ID of the owner of the scope. */ public String getOwnerId() { return this.ownerId; } /** ** The Amazon Web Services account ID of the owner of the scope. *
* * @param ownerId * The Amazon Web Services account ID of the owner of the scope. * @return Returns a reference to this object so that method calls can be chained together. */ public IpamScope withOwnerId(String ownerId) { setOwnerId(ownerId); return this; } /** ** The ID of the scope. *
* * @param ipamScopeId * The ID of the scope. */ public void setIpamScopeId(String ipamScopeId) { this.ipamScopeId = ipamScopeId; } /** ** The ID of the scope. *
* * @return The ID of the scope. */ public String getIpamScopeId() { return this.ipamScopeId; } /** ** The ID of the scope. *
* * @param ipamScopeId * The ID of the scope. * @return Returns a reference to this object so that method calls can be chained together. */ public IpamScope withIpamScopeId(String ipamScopeId) { setIpamScopeId(ipamScopeId); return this; } /** ** The Amazon Resource Name (ARN) of the scope. *
* * @param ipamScopeArn * The Amazon Resource Name (ARN) of the scope. */ public void setIpamScopeArn(String ipamScopeArn) { this.ipamScopeArn = ipamScopeArn; } /** ** The Amazon Resource Name (ARN) of the scope. *
* * @return The Amazon Resource Name (ARN) of the scope. */ public String getIpamScopeArn() { return this.ipamScopeArn; } /** ** The Amazon Resource Name (ARN) of the scope. *
* * @param ipamScopeArn * The Amazon Resource Name (ARN) of the scope. * @return Returns a reference to this object so that method calls can be chained together. */ public IpamScope withIpamScopeArn(String ipamScopeArn) { setIpamScopeArn(ipamScopeArn); return this; } /** ** The ARN of the IPAM. *
* * @param ipamArn * The ARN of the IPAM. */ public void setIpamArn(String ipamArn) { this.ipamArn = ipamArn; } /** ** The ARN of the IPAM. *
* * @return The ARN of the IPAM. */ public String getIpamArn() { return this.ipamArn; } /** ** The ARN of the IPAM. *
* * @param ipamArn * The ARN of the IPAM. * @return Returns a reference to this object so that method calls can be chained together. */ public IpamScope withIpamArn(String ipamArn) { setIpamArn(ipamArn); return this; } /** ** The Amazon Web Services Region of the IPAM scope. *
* * @param ipamRegion * The Amazon Web Services Region of the IPAM scope. */ public void setIpamRegion(String ipamRegion) { this.ipamRegion = ipamRegion; } /** ** The Amazon Web Services Region of the IPAM scope. *
* * @return The Amazon Web Services Region of the IPAM scope. */ public String getIpamRegion() { return this.ipamRegion; } /** ** The Amazon Web Services Region of the IPAM scope. *
* * @param ipamRegion * The Amazon Web Services Region of the IPAM scope. * @return Returns a reference to this object so that method calls can be chained together. */ public IpamScope withIpamRegion(String ipamRegion) { setIpamRegion(ipamRegion); return this; } /** ** The type of the scope. *
* * @param ipamScopeType * The type of the scope. * @see IpamScopeType */ public void setIpamScopeType(String ipamScopeType) { this.ipamScopeType = ipamScopeType; } /** ** The type of the scope. *
* * @return The type of the scope. * @see IpamScopeType */ public String getIpamScopeType() { return this.ipamScopeType; } /** ** The type of the scope. *
* * @param ipamScopeType * The type of the scope. * @return Returns a reference to this object so that method calls can be chained together. * @see IpamScopeType */ public IpamScope withIpamScopeType(String ipamScopeType) { setIpamScopeType(ipamScopeType); return this; } /** ** The type of the scope. *
* * @param ipamScopeType * The type of the scope. * @return Returns a reference to this object so that method calls can be chained together. * @see IpamScopeType */ public IpamScope withIpamScopeType(IpamScopeType ipamScopeType) { this.ipamScopeType = ipamScopeType.toString(); return this; } /** ** Defines if the scope is the default scope or not. *
* * @param isDefault * Defines if the scope is the default scope or not. */ public void setIsDefault(Boolean isDefault) { this.isDefault = isDefault; } /** ** Defines if the scope is the default scope or not. *
* * @return Defines if the scope is the default scope or not. */ public Boolean getIsDefault() { return this.isDefault; } /** ** Defines if the scope is the default scope or not. *
* * @param isDefault * Defines if the scope is the default scope or not. * @return Returns a reference to this object so that method calls can be chained together. */ public IpamScope withIsDefault(Boolean isDefault) { setIsDefault(isDefault); return this; } /** ** Defines if the scope is the default scope or not. *
* * @return Defines if the scope is the default scope or not. */ public Boolean isDefault() { return this.isDefault; } /** ** The description of the scope. *
* * @param description * The description of the scope. */ public void setDescription(String description) { this.description = description; } /** ** The description of the scope. *
* * @return The description of the scope. */ public String getDescription() { return this.description; } /** ** The description of the scope. *
* * @param description * The description of the scope. * @return Returns a reference to this object so that method calls can be chained together. */ public IpamScope withDescription(String description) { setDescription(description); return this; } /** ** The number of pools in the scope. *
* * @param poolCount * The number of pools in the scope. */ public void setPoolCount(Integer poolCount) { this.poolCount = poolCount; } /** ** The number of pools in the scope. *
* * @return The number of pools in the scope. */ public Integer getPoolCount() { return this.poolCount; } /** ** The number of pools in the scope. *
* * @param poolCount * The number of pools in the scope. * @return Returns a reference to this object so that method calls can be chained together. */ public IpamScope withPoolCount(Integer poolCount) { setPoolCount(poolCount); return this; } /** ** The state of the IPAM scope. *
* * @param state * The state of the IPAM scope. * @see IpamScopeState */ public void setState(String state) { this.state = state; } /** ** The state of the IPAM scope. *
* * @return The state of the IPAM scope. * @see IpamScopeState */ public String getState() { return this.state; } /** ** The state of the IPAM scope. *
* * @param state * The state of the IPAM scope. * @return Returns a reference to this object so that method calls can be chained together. * @see IpamScopeState */ public IpamScope withState(String state) { setState(state); return this; } /** ** The state of the IPAM scope. *
* * @param state * The state of the IPAM scope. * @return Returns a reference to this object so that method calls can be chained together. * @see IpamScopeState */ public IpamScope withState(IpamScopeState state) { this.state = state.toString(); return this; } /** *
* The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value
* as the filter value. For example, to find all resources that have a tag with the key Owner
and the
* value TeamA
, specify tag:Owner
for the filter name and TeamA
for the
* filter value.
*
Owner
and the value TeamA
, specify tag:Owner
for the filter name
* and TeamA
for the filter value.
*/
public java.util.List
* The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value
* as the filter value. For example, to find all resources that have a tag with the key Owner
and the
* value TeamA
, specify tag:Owner
for the filter name and TeamA
for the
* filter value.
*
Owner
and the value TeamA
, specify tag:Owner
for the filter name
* and TeamA
for the filter value.
*/
public void setTags(java.util.Collection
* The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value
* as the filter value. For example, to find all resources that have a tag with the key Owner
and the
* value TeamA
, specify tag:Owner
for the filter name and TeamA
for the
* filter value.
*
* NOTE: This method appends the values to the existing list (if any). Use * {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the * existing values. *
* * @param tags * The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the * tag value as the filter value. For example, to find all resources that have a tag with the key *Owner
and the value TeamA
, specify tag:Owner
for the filter name
* and TeamA
for the filter value.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public IpamScope withTags(Tag... tags) {
if (this.tags == null) {
setTags(new com.amazonaws.internal.SdkInternalList
* The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value
* as the filter value. For example, to find all resources that have a tag with the key Owner
and the
* value TeamA
, specify tag:Owner
for the filter name and TeamA
for the
* filter value.
*
Owner
and the value TeamA
, specify tag:Owner
for the filter name
* and TeamA
for the filter value.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public IpamScope withTags(java.util.Collection