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

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

Go to download

The AWS Java SDK for Amazon EC2 module holds the client classes that are used for communicating with Amazon EC2 Service

There is a newer version: 1.12.765
Show newest version
/*
 * Copyright 2014-2019 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 a VPC endpoint service. *

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

* The Amazon Resource Name (ARN) of the service. *

*/ private String serviceName; /** *

* The type of service. *

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

* The Availability Zones in which the service is available. *

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

* The AWS account ID of the service owner. *

*/ private String owner; /** *

* The DNS names for the service. *

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

* The private DNS name for the service. *

*/ private String privateDnsName; /** *

* Indicates whether the service supports endpoint policies. *

*/ private Boolean vpcEndpointPolicySupported; /** *

* Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner. *

*/ private Boolean acceptanceRequired; /** *

* The Amazon Resource Name (ARN) of the service. *

* * @param serviceName * The Amazon Resource Name (ARN) of the service. */ public void setServiceName(String serviceName) { this.serviceName = serviceName; } /** *

* The Amazon Resource Name (ARN) of the service. *

* * @return The Amazon Resource Name (ARN) of the service. */ public String getServiceName() { return this.serviceName; } /** *

* The Amazon Resource Name (ARN) of the service. *

* * @param serviceName * The Amazon Resource Name (ARN) of the service. * @return Returns a reference to this object so that method calls can be chained together. */ public ServiceDetail withServiceName(String serviceName) { setServiceName(serviceName); return this; } /** *

* The type of service. *

* * @return The type of service. */ public java.util.List getServiceType() { if (serviceType == null) { serviceType = new com.amazonaws.internal.SdkInternalList(); } return serviceType; } /** *

* The type of service. *

* * @param serviceType * The type of service. */ public void setServiceType(java.util.Collection serviceType) { if (serviceType == null) { this.serviceType = null; return; } this.serviceType = new com.amazonaws.internal.SdkInternalList(serviceType); } /** *

* The type of service. *

*

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

* * @param serviceType * The type of service. * @return Returns a reference to this object so that method calls can be chained together. */ public ServiceDetail withServiceType(ServiceTypeDetail... serviceType) { if (this.serviceType == null) { setServiceType(new com.amazonaws.internal.SdkInternalList(serviceType.length)); } for (ServiceTypeDetail ele : serviceType) { this.serviceType.add(ele); } return this; } /** *

* The type of service. *

* * @param serviceType * The type of service. * @return Returns a reference to this object so that method calls can be chained together. */ public ServiceDetail withServiceType(java.util.Collection serviceType) { setServiceType(serviceType); return this; } /** *

* The Availability Zones in which the service is available. *

* * @return The Availability Zones in which the service is available. */ public java.util.List getAvailabilityZones() { if (availabilityZones == null) { availabilityZones = new com.amazonaws.internal.SdkInternalList(); } return availabilityZones; } /** *

* The Availability Zones in which the service is available. *

* * @param availabilityZones * The Availability Zones in which the service is available. */ public void setAvailabilityZones(java.util.Collection availabilityZones) { if (availabilityZones == null) { this.availabilityZones = null; return; } this.availabilityZones = new com.amazonaws.internal.SdkInternalList(availabilityZones); } /** *

* The Availability Zones in which the service is available. *

*

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

* * @param availabilityZones * The Availability Zones in which the service is available. * @return Returns a reference to this object so that method calls can be chained together. */ public ServiceDetail withAvailabilityZones(String... availabilityZones) { if (this.availabilityZones == null) { setAvailabilityZones(new com.amazonaws.internal.SdkInternalList(availabilityZones.length)); } for (String ele : availabilityZones) { this.availabilityZones.add(ele); } return this; } /** *

* The Availability Zones in which the service is available. *

* * @param availabilityZones * The Availability Zones in which the service is available. * @return Returns a reference to this object so that method calls can be chained together. */ public ServiceDetail withAvailabilityZones(java.util.Collection availabilityZones) { setAvailabilityZones(availabilityZones); return this; } /** *

* The AWS account ID of the service owner. *

* * @param owner * The AWS account ID of the service owner. */ public void setOwner(String owner) { this.owner = owner; } /** *

* The AWS account ID of the service owner. *

* * @return The AWS account ID of the service owner. */ public String getOwner() { return this.owner; } /** *

* The AWS account ID of the service owner. *

* * @param owner * The AWS account ID of the service owner. * @return Returns a reference to this object so that method calls can be chained together. */ public ServiceDetail withOwner(String owner) { setOwner(owner); return this; } /** *

* The DNS names for the service. *

* * @return The DNS names for the service. */ public java.util.List getBaseEndpointDnsNames() { if (baseEndpointDnsNames == null) { baseEndpointDnsNames = new com.amazonaws.internal.SdkInternalList(); } return baseEndpointDnsNames; } /** *

* The DNS names for the service. *

* * @param baseEndpointDnsNames * The DNS names for the service. */ public void setBaseEndpointDnsNames(java.util.Collection baseEndpointDnsNames) { if (baseEndpointDnsNames == null) { this.baseEndpointDnsNames = null; return; } this.baseEndpointDnsNames = new com.amazonaws.internal.SdkInternalList(baseEndpointDnsNames); } /** *

* The DNS names for the service. *

*

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

* * @param baseEndpointDnsNames * The DNS names for the service. * @return Returns a reference to this object so that method calls can be chained together. */ public ServiceDetail withBaseEndpointDnsNames(String... baseEndpointDnsNames) { if (this.baseEndpointDnsNames == null) { setBaseEndpointDnsNames(new com.amazonaws.internal.SdkInternalList(baseEndpointDnsNames.length)); } for (String ele : baseEndpointDnsNames) { this.baseEndpointDnsNames.add(ele); } return this; } /** *

* The DNS names for the service. *

* * @param baseEndpointDnsNames * The DNS names for the service. * @return Returns a reference to this object so that method calls can be chained together. */ public ServiceDetail withBaseEndpointDnsNames(java.util.Collection baseEndpointDnsNames) { setBaseEndpointDnsNames(baseEndpointDnsNames); return this; } /** *

* The private DNS name for the service. *

* * @param privateDnsName * The private DNS name for the service. */ public void setPrivateDnsName(String privateDnsName) { this.privateDnsName = privateDnsName; } /** *

* The private DNS name for the service. *

* * @return The private DNS name for the service. */ public String getPrivateDnsName() { return this.privateDnsName; } /** *

* The private DNS name for the service. *

* * @param privateDnsName * The private DNS name for the service. * @return Returns a reference to this object so that method calls can be chained together. */ public ServiceDetail withPrivateDnsName(String privateDnsName) { setPrivateDnsName(privateDnsName); return this; } /** *

* Indicates whether the service supports endpoint policies. *

* * @param vpcEndpointPolicySupported * Indicates whether the service supports endpoint policies. */ public void setVpcEndpointPolicySupported(Boolean vpcEndpointPolicySupported) { this.vpcEndpointPolicySupported = vpcEndpointPolicySupported; } /** *

* Indicates whether the service supports endpoint policies. *

* * @return Indicates whether the service supports endpoint policies. */ public Boolean getVpcEndpointPolicySupported() { return this.vpcEndpointPolicySupported; } /** *

* Indicates whether the service supports endpoint policies. *

* * @param vpcEndpointPolicySupported * Indicates whether the service supports endpoint policies. * @return Returns a reference to this object so that method calls can be chained together. */ public ServiceDetail withVpcEndpointPolicySupported(Boolean vpcEndpointPolicySupported) { setVpcEndpointPolicySupported(vpcEndpointPolicySupported); return this; } /** *

* Indicates whether the service supports endpoint policies. *

* * @return Indicates whether the service supports endpoint policies. */ public Boolean isVpcEndpointPolicySupported() { return this.vpcEndpointPolicySupported; } /** *

* Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner. *

* * @param acceptanceRequired * Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner. */ public void setAcceptanceRequired(Boolean acceptanceRequired) { this.acceptanceRequired = acceptanceRequired; } /** *

* Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner. *

* * @return Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner. */ public Boolean getAcceptanceRequired() { return this.acceptanceRequired; } /** *

* Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner. *

* * @param acceptanceRequired * Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner. * @return Returns a reference to this object so that method calls can be chained together. */ public ServiceDetail withAcceptanceRequired(Boolean acceptanceRequired) { setAcceptanceRequired(acceptanceRequired); return this; } /** *

* Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner. *

* * @return Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner. */ public Boolean isAcceptanceRequired() { return this.acceptanceRequired; } /** * 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 (getServiceName() != null) sb.append("ServiceName: ").append(getServiceName()).append(","); if (getServiceType() != null) sb.append("ServiceType: ").append(getServiceType()).append(","); if (getAvailabilityZones() != null) sb.append("AvailabilityZones: ").append(getAvailabilityZones()).append(","); if (getOwner() != null) sb.append("Owner: ").append(getOwner()).append(","); if (getBaseEndpointDnsNames() != null) sb.append("BaseEndpointDnsNames: ").append(getBaseEndpointDnsNames()).append(","); if (getPrivateDnsName() != null) sb.append("PrivateDnsName: ").append(getPrivateDnsName()).append(","); if (getVpcEndpointPolicySupported() != null) sb.append("VpcEndpointPolicySupported: ").append(getVpcEndpointPolicySupported()).append(","); if (getAcceptanceRequired() != null) sb.append("AcceptanceRequired: ").append(getAcceptanceRequired()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof ServiceDetail == false) return false; ServiceDetail other = (ServiceDetail) obj; if (other.getServiceName() == null ^ this.getServiceName() == null) return false; if (other.getServiceName() != null && other.getServiceName().equals(this.getServiceName()) == false) return false; if (other.getServiceType() == null ^ this.getServiceType() == null) return false; if (other.getServiceType() != null && other.getServiceType().equals(this.getServiceType()) == false) return false; if (other.getAvailabilityZones() == null ^ this.getAvailabilityZones() == null) return false; if (other.getAvailabilityZones() != null && other.getAvailabilityZones().equals(this.getAvailabilityZones()) == false) return false; if (other.getOwner() == null ^ this.getOwner() == null) return false; if (other.getOwner() != null && other.getOwner().equals(this.getOwner()) == false) return false; if (other.getBaseEndpointDnsNames() == null ^ this.getBaseEndpointDnsNames() == null) return false; if (other.getBaseEndpointDnsNames() != null && other.getBaseEndpointDnsNames().equals(this.getBaseEndpointDnsNames()) == false) return false; if (other.getPrivateDnsName() == null ^ this.getPrivateDnsName() == null) return false; if (other.getPrivateDnsName() != null && other.getPrivateDnsName().equals(this.getPrivateDnsName()) == false) return false; if (other.getVpcEndpointPolicySupported() == null ^ this.getVpcEndpointPolicySupported() == null) return false; if (other.getVpcEndpointPolicySupported() != null && other.getVpcEndpointPolicySupported().equals(this.getVpcEndpointPolicySupported()) == false) return false; if (other.getAcceptanceRequired() == null ^ this.getAcceptanceRequired() == null) return false; if (other.getAcceptanceRequired() != null && other.getAcceptanceRequired().equals(this.getAcceptanceRequired()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getServiceName() == null) ? 0 : getServiceName().hashCode()); hashCode = prime * hashCode + ((getServiceType() == null) ? 0 : getServiceType().hashCode()); hashCode = prime * hashCode + ((getAvailabilityZones() == null) ? 0 : getAvailabilityZones().hashCode()); hashCode = prime * hashCode + ((getOwner() == null) ? 0 : getOwner().hashCode()); hashCode = prime * hashCode + ((getBaseEndpointDnsNames() == null) ? 0 : getBaseEndpointDnsNames().hashCode()); hashCode = prime * hashCode + ((getPrivateDnsName() == null) ? 0 : getPrivateDnsName().hashCode()); hashCode = prime * hashCode + ((getVpcEndpointPolicySupported() == null) ? 0 : getVpcEndpointPolicySupported().hashCode()); hashCode = prime * hashCode + ((getAcceptanceRequired() == null) ? 0 : getAcceptanceRequired().hashCode()); return hashCode; } @Override public ServiceDetail clone() { try { return (ServiceDetail) 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