/* * 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.apprunner.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Describes an App Runner service. It can describe a service in any state, including deleted services. *
** This type contains the full information about a service, including configuration details. It's returned by the CreateService, DescribeService, and DeleteService actions. A subset of * this information is returned by the ListServices action using the ServiceSummary type. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class Service implements Serializable, Cloneable, StructuredPojo { /** ** The customer-provided service name. *
*/ private String serviceName; /** ** An ID that App Runner generated for this service. It's unique within the Amazon Web Services Region. *
*/ private String serviceId; /** ** The Amazon Resource Name (ARN) of this service. *
*/ private String serviceArn; /** ** A subdomain URL that App Runner generated for this service. You can use this URL to access your service web * application. *
*/ private String serviceUrl; /** ** The time when the App Runner service was created. It's in the Unix time stamp format. *
*/ private java.util.Date createdAt; /** ** The time when the App Runner service was last updated at. It's in the Unix time stamp format. *
*/ private java.util.Date updatedAt; /** ** The time when the App Runner service was deleted. It's in the Unix time stamp format. *
*/ private java.util.Date deletedAt; /** ** The current state of the App Runner service. These particular values mean the following. *
*
* CREATE_FAILED
– The service failed to create. To troubleshoot this failure, read the failure events
* and logs, change any parameters that need to be fixed, and retry the call to create the service.
*
* The failed service isn't usable, and still counts towards your service quota. When you're done analyzing the * failure, delete the service. *
*
* DELETE_FAILED
– The service failed to delete and can't be successfully recovered. Retry the service
* deletion call to ensure that all related resources are removed.
*
* The source deployed to the App Runner service. It can be a code or an image repository. *
*/ private SourceConfiguration sourceConfiguration; /** ** The runtime configuration of instances (scaling units) of this service. *
*/ private InstanceConfiguration instanceConfiguration; /** ** The encryption key that App Runner uses to encrypt the service logs and the copy of the source repository that * App Runner maintains for the service. It can be either a customer-provided encryption key or an Amazon Web * Services managed key. *
*/ private EncryptionConfiguration encryptionConfiguration; /** ** The settings for the health check that App Runner performs to monitor the health of this service. *
*/ private HealthCheckConfiguration healthCheckConfiguration; /** ** Summary information for the App Runner automatic scaling configuration resource that's associated with this * service. *
*/ private AutoScalingConfigurationSummary autoScalingConfigurationSummary; /** ** Configuration settings related to network traffic of the web application that this service runs. *
*/ private NetworkConfiguration networkConfiguration; /** ** The observability configuration of this service. *
*/ private ServiceObservabilityConfiguration observabilityConfiguration; /** ** The customer-provided service name. *
* * @param serviceName * The customer-provided service name. */ public void setServiceName(String serviceName) { this.serviceName = serviceName; } /** ** The customer-provided service name. *
* * @return The customer-provided service name. */ public String getServiceName() { return this.serviceName; } /** ** The customer-provided service name. *
* * @param serviceName * The customer-provided service name. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withServiceName(String serviceName) { setServiceName(serviceName); return this; } /** ** An ID that App Runner generated for this service. It's unique within the Amazon Web Services Region. *
* * @param serviceId * An ID that App Runner generated for this service. It's unique within the Amazon Web Services Region. */ public void setServiceId(String serviceId) { this.serviceId = serviceId; } /** ** An ID that App Runner generated for this service. It's unique within the Amazon Web Services Region. *
* * @return An ID that App Runner generated for this service. It's unique within the Amazon Web Services Region. */ public String getServiceId() { return this.serviceId; } /** ** An ID that App Runner generated for this service. It's unique within the Amazon Web Services Region. *
* * @param serviceId * An ID that App Runner generated for this service. It's unique within the Amazon Web Services Region. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withServiceId(String serviceId) { setServiceId(serviceId); return this; } /** ** The Amazon Resource Name (ARN) of this service. *
* * @param serviceArn * The Amazon Resource Name (ARN) of this service. */ public void setServiceArn(String serviceArn) { this.serviceArn = serviceArn; } /** ** The Amazon Resource Name (ARN) of this service. *
* * @return The Amazon Resource Name (ARN) of this service. */ public String getServiceArn() { return this.serviceArn; } /** ** The Amazon Resource Name (ARN) of this service. *
* * @param serviceArn * The Amazon Resource Name (ARN) of this service. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withServiceArn(String serviceArn) { setServiceArn(serviceArn); return this; } /** ** A subdomain URL that App Runner generated for this service. You can use this URL to access your service web * application. *
* * @param serviceUrl * A subdomain URL that App Runner generated for this service. You can use this URL to access your service * web application. */ public void setServiceUrl(String serviceUrl) { this.serviceUrl = serviceUrl; } /** ** A subdomain URL that App Runner generated for this service. You can use this URL to access your service web * application. *
* * @return A subdomain URL that App Runner generated for this service. You can use this URL to access your service * web application. */ public String getServiceUrl() { return this.serviceUrl; } /** ** A subdomain URL that App Runner generated for this service. You can use this URL to access your service web * application. *
* * @param serviceUrl * A subdomain URL that App Runner generated for this service. You can use this URL to access your service * web application. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withServiceUrl(String serviceUrl) { setServiceUrl(serviceUrl); return this; } /** ** The time when the App Runner service was created. It's in the Unix time stamp format. *
* * @param createdAt * The time when the App Runner service was created. It's in the Unix time stamp format. */ public void setCreatedAt(java.util.Date createdAt) { this.createdAt = createdAt; } /** ** The time when the App Runner service was created. It's in the Unix time stamp format. *
* * @return The time when the App Runner service was created. It's in the Unix time stamp format. */ public java.util.Date getCreatedAt() { return this.createdAt; } /** ** The time when the App Runner service was created. It's in the Unix time stamp format. *
* * @param createdAt * The time when the App Runner service was created. It's in the Unix time stamp format. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withCreatedAt(java.util.Date createdAt) { setCreatedAt(createdAt); return this; } /** ** The time when the App Runner service was last updated at. It's in the Unix time stamp format. *
* * @param updatedAt * The time when the App Runner service was last updated at. It's in the Unix time stamp format. */ public void setUpdatedAt(java.util.Date updatedAt) { this.updatedAt = updatedAt; } /** ** The time when the App Runner service was last updated at. It's in the Unix time stamp format. *
* * @return The time when the App Runner service was last updated at. It's in the Unix time stamp format. */ public java.util.Date getUpdatedAt() { return this.updatedAt; } /** ** The time when the App Runner service was last updated at. It's in the Unix time stamp format. *
* * @param updatedAt * The time when the App Runner service was last updated at. It's in the Unix time stamp format. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withUpdatedAt(java.util.Date updatedAt) { setUpdatedAt(updatedAt); return this; } /** ** The time when the App Runner service was deleted. It's in the Unix time stamp format. *
* * @param deletedAt * The time when the App Runner service was deleted. It's in the Unix time stamp format. */ public void setDeletedAt(java.util.Date deletedAt) { this.deletedAt = deletedAt; } /** ** The time when the App Runner service was deleted. It's in the Unix time stamp format. *
* * @return The time when the App Runner service was deleted. It's in the Unix time stamp format. */ public java.util.Date getDeletedAt() { return this.deletedAt; } /** ** The time when the App Runner service was deleted. It's in the Unix time stamp format. *
* * @param deletedAt * The time when the App Runner service was deleted. It's in the Unix time stamp format. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withDeletedAt(java.util.Date deletedAt) { setDeletedAt(deletedAt); return this; } /** ** The current state of the App Runner service. These particular values mean the following. *
*
* CREATE_FAILED
– The service failed to create. To troubleshoot this failure, read the failure events
* and logs, change any parameters that need to be fixed, and retry the call to create the service.
*
* The failed service isn't usable, and still counts towards your service quota. When you're done analyzing the * failure, delete the service. *
*
* DELETE_FAILED
– The service failed to delete and can't be successfully recovered. Retry the service
* deletion call to ensure that all related resources are removed.
*
* CREATE_FAILED
– The service failed to create. To troubleshoot this failure, read the failure
* events and logs, change any parameters that need to be fixed, and retry the call to create the service.
*
* The failed service isn't usable, and still counts towards your service quota. When you're done analyzing * the failure, delete the service. *
*
* DELETE_FAILED
– The service failed to delete and can't be successfully recovered. Retry the
* service deletion call to ensure that all related resources are removed.
*
* The current state of the App Runner service. These particular values mean the following. *
*
* CREATE_FAILED
– The service failed to create. To troubleshoot this failure, read the failure events
* and logs, change any parameters that need to be fixed, and retry the call to create the service.
*
* The failed service isn't usable, and still counts towards your service quota. When you're done analyzing the * failure, delete the service. *
*
* DELETE_FAILED
– The service failed to delete and can't be successfully recovered. Retry the service
* deletion call to ensure that all related resources are removed.
*
* CREATE_FAILED
– The service failed to create. To troubleshoot this failure, read the failure
* events and logs, change any parameters that need to be fixed, and retry the call to create the service.
*
* The failed service isn't usable, and still counts towards your service quota. When you're done analyzing * the failure, delete the service. *
*
* DELETE_FAILED
– The service failed to delete and can't be successfully recovered. Retry the
* service deletion call to ensure that all related resources are removed.
*
* The current state of the App Runner service. These particular values mean the following. *
*
* CREATE_FAILED
– The service failed to create. To troubleshoot this failure, read the failure events
* and logs, change any parameters that need to be fixed, and retry the call to create the service.
*
* The failed service isn't usable, and still counts towards your service quota. When you're done analyzing the * failure, delete the service. *
*
* DELETE_FAILED
– The service failed to delete and can't be successfully recovered. Retry the service
* deletion call to ensure that all related resources are removed.
*
* CREATE_FAILED
– The service failed to create. To troubleshoot this failure, read the failure
* events and logs, change any parameters that need to be fixed, and retry the call to create the service.
*
* The failed service isn't usable, and still counts towards your service quota. When you're done analyzing * the failure, delete the service. *
*
* DELETE_FAILED
– The service failed to delete and can't be successfully recovered. Retry the
* service deletion call to ensure that all related resources are removed.
*
* The current state of the App Runner service. These particular values mean the following. *
*
* CREATE_FAILED
– The service failed to create. To troubleshoot this failure, read the failure events
* and logs, change any parameters that need to be fixed, and retry the call to create the service.
*
* The failed service isn't usable, and still counts towards your service quota. When you're done analyzing the * failure, delete the service. *
*
* DELETE_FAILED
– The service failed to delete and can't be successfully recovered. Retry the service
* deletion call to ensure that all related resources are removed.
*
* CREATE_FAILED
– The service failed to create. To troubleshoot this failure, read the failure
* events and logs, change any parameters that need to be fixed, and retry the call to create the service.
*
* The failed service isn't usable, and still counts towards your service quota. When you're done analyzing * the failure, delete the service. *
*
* DELETE_FAILED
– The service failed to delete and can't be successfully recovered. Retry the
* service deletion call to ensure that all related resources are removed.
*
* The source deployed to the App Runner service. It can be a code or an image repository. *
* * @param sourceConfiguration * The source deployed to the App Runner service. It can be a code or an image repository. */ public void setSourceConfiguration(SourceConfiguration sourceConfiguration) { this.sourceConfiguration = sourceConfiguration; } /** ** The source deployed to the App Runner service. It can be a code or an image repository. *
* * @return The source deployed to the App Runner service. It can be a code or an image repository. */ public SourceConfiguration getSourceConfiguration() { return this.sourceConfiguration; } /** ** The source deployed to the App Runner service. It can be a code or an image repository. *
* * @param sourceConfiguration * The source deployed to the App Runner service. It can be a code or an image repository. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withSourceConfiguration(SourceConfiguration sourceConfiguration) { setSourceConfiguration(sourceConfiguration); return this; } /** ** The runtime configuration of instances (scaling units) of this service. *
* * @param instanceConfiguration * The runtime configuration of instances (scaling units) of this service. */ public void setInstanceConfiguration(InstanceConfiguration instanceConfiguration) { this.instanceConfiguration = instanceConfiguration; } /** ** The runtime configuration of instances (scaling units) of this service. *
* * @return The runtime configuration of instances (scaling units) of this service. */ public InstanceConfiguration getInstanceConfiguration() { return this.instanceConfiguration; } /** ** The runtime configuration of instances (scaling units) of this service. *
* * @param instanceConfiguration * The runtime configuration of instances (scaling units) of this service. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withInstanceConfiguration(InstanceConfiguration instanceConfiguration) { setInstanceConfiguration(instanceConfiguration); return this; } /** ** The encryption key that App Runner uses to encrypt the service logs and the copy of the source repository that * App Runner maintains for the service. It can be either a customer-provided encryption key or an Amazon Web * Services managed key. *
* * @param encryptionConfiguration * The encryption key that App Runner uses to encrypt the service logs and the copy of the source repository * that App Runner maintains for the service. It can be either a customer-provided encryption key or an * Amazon Web Services managed key. */ public void setEncryptionConfiguration(EncryptionConfiguration encryptionConfiguration) { this.encryptionConfiguration = encryptionConfiguration; } /** ** The encryption key that App Runner uses to encrypt the service logs and the copy of the source repository that * App Runner maintains for the service. It can be either a customer-provided encryption key or an Amazon Web * Services managed key. *
* * @return The encryption key that App Runner uses to encrypt the service logs and the copy of the source repository * that App Runner maintains for the service. It can be either a customer-provided encryption key or an * Amazon Web Services managed key. */ public EncryptionConfiguration getEncryptionConfiguration() { return this.encryptionConfiguration; } /** ** The encryption key that App Runner uses to encrypt the service logs and the copy of the source repository that * App Runner maintains for the service. It can be either a customer-provided encryption key or an Amazon Web * Services managed key. *
* * @param encryptionConfiguration * The encryption key that App Runner uses to encrypt the service logs and the copy of the source repository * that App Runner maintains for the service. It can be either a customer-provided encryption key or an * Amazon Web Services managed key. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withEncryptionConfiguration(EncryptionConfiguration encryptionConfiguration) { setEncryptionConfiguration(encryptionConfiguration); return this; } /** ** The settings for the health check that App Runner performs to monitor the health of this service. *
* * @param healthCheckConfiguration * The settings for the health check that App Runner performs to monitor the health of this service. */ public void setHealthCheckConfiguration(HealthCheckConfiguration healthCheckConfiguration) { this.healthCheckConfiguration = healthCheckConfiguration; } /** ** The settings for the health check that App Runner performs to monitor the health of this service. *
* * @return The settings for the health check that App Runner performs to monitor the health of this service. */ public HealthCheckConfiguration getHealthCheckConfiguration() { return this.healthCheckConfiguration; } /** ** The settings for the health check that App Runner performs to monitor the health of this service. *
* * @param healthCheckConfiguration * The settings for the health check that App Runner performs to monitor the health of this service. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withHealthCheckConfiguration(HealthCheckConfiguration healthCheckConfiguration) { setHealthCheckConfiguration(healthCheckConfiguration); return this; } /** ** Summary information for the App Runner automatic scaling configuration resource that's associated with this * service. *
* * @param autoScalingConfigurationSummary * Summary information for the App Runner automatic scaling configuration resource that's associated with * this service. */ public void setAutoScalingConfigurationSummary(AutoScalingConfigurationSummary autoScalingConfigurationSummary) { this.autoScalingConfigurationSummary = autoScalingConfigurationSummary; } /** ** Summary information for the App Runner automatic scaling configuration resource that's associated with this * service. *
* * @return Summary information for the App Runner automatic scaling configuration resource that's associated with * this service. */ public AutoScalingConfigurationSummary getAutoScalingConfigurationSummary() { return this.autoScalingConfigurationSummary; } /** ** Summary information for the App Runner automatic scaling configuration resource that's associated with this * service. *
* * @param autoScalingConfigurationSummary * Summary information for the App Runner automatic scaling configuration resource that's associated with * this service. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withAutoScalingConfigurationSummary(AutoScalingConfigurationSummary autoScalingConfigurationSummary) { setAutoScalingConfigurationSummary(autoScalingConfigurationSummary); return this; } /** ** Configuration settings related to network traffic of the web application that this service runs. *
* * @param networkConfiguration * Configuration settings related to network traffic of the web application that this service runs. */ public void setNetworkConfiguration(NetworkConfiguration networkConfiguration) { this.networkConfiguration = networkConfiguration; } /** ** Configuration settings related to network traffic of the web application that this service runs. *
* * @return Configuration settings related to network traffic of the web application that this service runs. */ public NetworkConfiguration getNetworkConfiguration() { return this.networkConfiguration; } /** ** Configuration settings related to network traffic of the web application that this service runs. *
* * @param networkConfiguration * Configuration settings related to network traffic of the web application that this service runs. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withNetworkConfiguration(NetworkConfiguration networkConfiguration) { setNetworkConfiguration(networkConfiguration); return this; } /** ** The observability configuration of this service. *
* * @param observabilityConfiguration * The observability configuration of this service. */ public void setObservabilityConfiguration(ServiceObservabilityConfiguration observabilityConfiguration) { this.observabilityConfiguration = observabilityConfiguration; } /** ** The observability configuration of this service. *
* * @return The observability configuration of this service. */ public ServiceObservabilityConfiguration getObservabilityConfiguration() { return this.observabilityConfiguration; } /** ** The observability configuration of this service. *
* * @param observabilityConfiguration * The observability configuration of this service. * @return Returns a reference to this object so that method calls can be chained together. */ public Service withObservabilityConfiguration(ServiceObservabilityConfiguration observabilityConfiguration) { setObservabilityConfiguration(observabilityConfiguration); 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 (getServiceName() != null) sb.append("ServiceName: ").append(getServiceName()).append(","); if (getServiceId() != null) sb.append("ServiceId: ").append(getServiceId()).append(","); if (getServiceArn() != null) sb.append("ServiceArn: ").append(getServiceArn()).append(","); if (getServiceUrl() != null) sb.append("ServiceUrl: ").append(getServiceUrl()).append(","); if (getCreatedAt() != null) sb.append("CreatedAt: ").append(getCreatedAt()).append(","); if (getUpdatedAt() != null) sb.append("UpdatedAt: ").append(getUpdatedAt()).append(","); if (getDeletedAt() != null) sb.append("DeletedAt: ").append(getDeletedAt()).append(","); if (getStatus() != null) sb.append("Status: ").append(getStatus()).append(","); if (getSourceConfiguration() != null) sb.append("SourceConfiguration: ").append(getSourceConfiguration()).append(","); if (getInstanceConfiguration() != null) sb.append("InstanceConfiguration: ").append(getInstanceConfiguration()).append(","); if (getEncryptionConfiguration() != null) sb.append("EncryptionConfiguration: ").append(getEncryptionConfiguration()).append(","); if (getHealthCheckConfiguration() != null) sb.append("HealthCheckConfiguration: ").append(getHealthCheckConfiguration()).append(","); if (getAutoScalingConfigurationSummary() != null) sb.append("AutoScalingConfigurationSummary: ").append(getAutoScalingConfigurationSummary()).append(","); if (getNetworkConfiguration() != null) sb.append("NetworkConfiguration: ").append(getNetworkConfiguration()).append(","); if (getObservabilityConfiguration() != null) sb.append("ObservabilityConfiguration: ").append(getObservabilityConfiguration()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof Service == false) return false; Service other = (Service) obj; if (other.getServiceName() == null ^ this.getServiceName() == null) return false; if (other.getServiceName() != null && other.getServiceName().equals(this.getServiceName()) == false) return false; if (other.getServiceId() == null ^ this.getServiceId() == null) return false; if (other.getServiceId() != null && other.getServiceId().equals(this.getServiceId()) == false) return false; if (other.getServiceArn() == null ^ this.getServiceArn() == null) return false; if (other.getServiceArn() != null && other.getServiceArn().equals(this.getServiceArn()) == false) return false; if (other.getServiceUrl() == null ^ this.getServiceUrl() == null) return false; if (other.getServiceUrl() != null && other.getServiceUrl().equals(this.getServiceUrl()) == false) return false; if (other.getCreatedAt() == null ^ this.getCreatedAt() == null) return false; if (other.getCreatedAt() != null && other.getCreatedAt().equals(this.getCreatedAt()) == false) return false; if (other.getUpdatedAt() == null ^ this.getUpdatedAt() == null) return false; if (other.getUpdatedAt() != null && other.getUpdatedAt().equals(this.getUpdatedAt()) == false) return false; if (other.getDeletedAt() == null ^ this.getDeletedAt() == null) return false; if (other.getDeletedAt() != null && other.getDeletedAt().equals(this.getDeletedAt()) == false) return false; if (other.getStatus() == null ^ this.getStatus() == null) return false; if (other.getStatus() != null && other.getStatus().equals(this.getStatus()) == false) return false; if (other.getSourceConfiguration() == null ^ this.getSourceConfiguration() == null) return false; if (other.getSourceConfiguration() != null && other.getSourceConfiguration().equals(this.getSourceConfiguration()) == false) return false; if (other.getInstanceConfiguration() == null ^ this.getInstanceConfiguration() == null) return false; if (other.getInstanceConfiguration() != null && other.getInstanceConfiguration().equals(this.getInstanceConfiguration()) == false) return false; if (other.getEncryptionConfiguration() == null ^ this.getEncryptionConfiguration() == null) return false; if (other.getEncryptionConfiguration() != null && other.getEncryptionConfiguration().equals(this.getEncryptionConfiguration()) == false) return false; if (other.getHealthCheckConfiguration() == null ^ this.getHealthCheckConfiguration() == null) return false; if (other.getHealthCheckConfiguration() != null && other.getHealthCheckConfiguration().equals(this.getHealthCheckConfiguration()) == false) return false; if (other.getAutoScalingConfigurationSummary() == null ^ this.getAutoScalingConfigurationSummary() == null) return false; if (other.getAutoScalingConfigurationSummary() != null && other.getAutoScalingConfigurationSummary().equals(this.getAutoScalingConfigurationSummary()) == false) return false; if (other.getNetworkConfiguration() == null ^ this.getNetworkConfiguration() == null) return false; if (other.getNetworkConfiguration() != null && other.getNetworkConfiguration().equals(this.getNetworkConfiguration()) == false) return false; if (other.getObservabilityConfiguration() == null ^ this.getObservabilityConfiguration() == null) return false; if (other.getObservabilityConfiguration() != null && other.getObservabilityConfiguration().equals(this.getObservabilityConfiguration()) == 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 + ((getServiceId() == null) ? 0 : getServiceId().hashCode()); hashCode = prime * hashCode + ((getServiceArn() == null) ? 0 : getServiceArn().hashCode()); hashCode = prime * hashCode + ((getServiceUrl() == null) ? 0 : getServiceUrl().hashCode()); hashCode = prime * hashCode + ((getCreatedAt() == null) ? 0 : getCreatedAt().hashCode()); hashCode = prime * hashCode + ((getUpdatedAt() == null) ? 0 : getUpdatedAt().hashCode()); hashCode = prime * hashCode + ((getDeletedAt() == null) ? 0 : getDeletedAt().hashCode()); hashCode = prime * hashCode + ((getStatus() == null) ? 0 : getStatus().hashCode()); hashCode = prime * hashCode + ((getSourceConfiguration() == null) ? 0 : getSourceConfiguration().hashCode()); hashCode = prime * hashCode + ((getInstanceConfiguration() == null) ? 0 : getInstanceConfiguration().hashCode()); hashCode = prime * hashCode + ((getEncryptionConfiguration() == null) ? 0 : getEncryptionConfiguration().hashCode()); hashCode = prime * hashCode + ((getHealthCheckConfiguration() == null) ? 0 : getHealthCheckConfiguration().hashCode()); hashCode = prime * hashCode + ((getAutoScalingConfigurationSummary() == null) ? 0 : getAutoScalingConfigurationSummary().hashCode()); hashCode = prime * hashCode + ((getNetworkConfiguration() == null) ? 0 : getNetworkConfiguration().hashCode()); hashCode = prime * hashCode + ((getObservabilityConfiguration() == null) ? 0 : getObservabilityConfiguration().hashCode()); return hashCode; } @Override public Service clone() { try { return (Service) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.apprunner.model.transform.ServiceMarshaller.getInstance().marshall(this, protocolMarshaller); } }