/* * Copyright 2010-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.iot.model; import java.io.Serializable; /** *

* The summary of a domain configuration. A domain configuration specifies * custom IoT-specific information about a domain. A domain configuration can be * associated with an Amazon Web Services-managed domain (for example, * dbc123defghijk.iot.us-west-2.amazonaws.com), a customer managed domain, or a * default endpoint. *

* */ public class DomainConfigurationSummary implements Serializable { /** *

* The name of the domain configuration. This value must be unique to a * region. *

*

* Constraints:
* Length: 1 - 128
* Pattern: [\w.:-]+
*/ private String domainConfigurationName; /** *

* The ARN of the domain configuration. *

*/ private String domainConfigurationArn; /** *

* The type of service delivered by the endpoint. *

*

* Constraints:
* Allowed Values: DATA, CREDENTIAL_PROVIDER, JOBS */ private String serviceType; /** *

* The name of the domain configuration. This value must be unique to a * region. *

*

* Constraints:
* Length: 1 - 128
* Pattern: [\w.:-]+
* * @return

* The name of the domain configuration. This value must be unique * to a region. *

*/ public String getDomainConfigurationName() { return domainConfigurationName; } /** *

* The name of the domain configuration. This value must be unique to a * region. *

*

* Constraints:
* Length: 1 - 128
* Pattern: [\w.:-]+
* * @param domainConfigurationName

* The name of the domain configuration. This value must be * unique to a region. *

*/ public void setDomainConfigurationName(String domainConfigurationName) { this.domainConfigurationName = domainConfigurationName; } /** *

* The name of the domain configuration. This value must be unique to a * region. *

*

* Returns a reference to this object so that method calls can be chained * together. *

* Constraints:
* Length: 1 - 128
* Pattern: [\w.:-]+
* * @param domainConfigurationName

* The name of the domain configuration. This value must be * unique to a region. *

* @return A reference to this updated object so that method calls can be * chained together. */ public DomainConfigurationSummary withDomainConfigurationName(String domainConfigurationName) { this.domainConfigurationName = domainConfigurationName; return this; } /** *

* The ARN of the domain configuration. *

* * @return

* The ARN of the domain configuration. *

*/ public String getDomainConfigurationArn() { return domainConfigurationArn; } /** *

* The ARN of the domain configuration. *

* * @param domainConfigurationArn

* The ARN of the domain configuration. *

*/ public void setDomainConfigurationArn(String domainConfigurationArn) { this.domainConfigurationArn = domainConfigurationArn; } /** *

* The ARN of the domain configuration. *

*

* Returns a reference to this object so that method calls can be chained * together. * * @param domainConfigurationArn

* The ARN of the domain configuration. *

* @return A reference to this updated object so that method calls can be * chained together. */ public DomainConfigurationSummary withDomainConfigurationArn(String domainConfigurationArn) { this.domainConfigurationArn = domainConfigurationArn; return this; } /** *

* The type of service delivered by the endpoint. *

*

* Constraints:
* Allowed Values: DATA, CREDENTIAL_PROVIDER, JOBS * * @return

* The type of service delivered by the endpoint. *

* @see ServiceType */ public String getServiceType() { return serviceType; } /** *

* The type of service delivered by the endpoint. *

*

* Constraints:
* Allowed Values: DATA, CREDENTIAL_PROVIDER, JOBS * * @param serviceType

* The type of service delivered by the endpoint. *

* @see ServiceType */ public void setServiceType(String serviceType) { this.serviceType = serviceType; } /** *

* The type of service delivered by the endpoint. *

*

* Returns a reference to this object so that method calls can be chained * together. *

* Constraints:
* Allowed Values: DATA, CREDENTIAL_PROVIDER, JOBS * * @param serviceType

* The type of service delivered by the endpoint. *

* @return A reference to this updated object so that method calls can be * chained together. * @see ServiceType */ public DomainConfigurationSummary withServiceType(String serviceType) { this.serviceType = serviceType; return this; } /** *

* The type of service delivered by the endpoint. *

*

* Constraints:
* Allowed Values: DATA, CREDENTIAL_PROVIDER, JOBS * * @param serviceType

* The type of service delivered by the endpoint. *

* @see ServiceType */ public void setServiceType(ServiceType serviceType) { this.serviceType = serviceType.toString(); } /** *

* The type of service delivered by the endpoint. *

*

* Returns a reference to this object so that method calls can be chained * together. *

* Constraints:
* Allowed Values: DATA, CREDENTIAL_PROVIDER, JOBS * * @param serviceType

* The type of service delivered by the endpoint. *

* @return A reference to this updated object so that method calls can be * chained together. * @see ServiceType */ public DomainConfigurationSummary withServiceType(ServiceType serviceType) { this.serviceType = serviceType.toString(); return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getDomainConfigurationName() != null) sb.append("domainConfigurationName: " + getDomainConfigurationName() + ","); if (getDomainConfigurationArn() != null) sb.append("domainConfigurationArn: " + getDomainConfigurationArn() + ","); if (getServiceType() != null) sb.append("serviceType: " + getServiceType()); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getDomainConfigurationName() == null) ? 0 : getDomainConfigurationName() .hashCode()); hashCode = prime * hashCode + ((getDomainConfigurationArn() == null) ? 0 : getDomainConfigurationArn() .hashCode()); hashCode = prime * hashCode + ((getServiceType() == null) ? 0 : getServiceType().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof DomainConfigurationSummary == false) return false; DomainConfigurationSummary other = (DomainConfigurationSummary) obj; if (other.getDomainConfigurationName() == null ^ this.getDomainConfigurationName() == null) return false; if (other.getDomainConfigurationName() != null && other.getDomainConfigurationName().equals(this.getDomainConfigurationName()) == false) return false; if (other.getDomainConfigurationArn() == null ^ this.getDomainConfigurationArn() == null) return false; if (other.getDomainConfigurationArn() != null && other.getDomainConfigurationArn().equals(this.getDomainConfigurationArn()) == false) return false; if (other.getServiceType() == null ^ this.getServiceType() == null) return false; if (other.getServiceType() != null && other.getServiceType().equals(this.getServiceType()) == false) return false; return true; } }