/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace AppRunner { namespace Model { /** *

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 Also:

AWS * API Reference

*/ class Service { public: AWS_APPRUNNER_API Service(); AWS_APPRUNNER_API Service(Aws::Utils::Json::JsonView jsonValue); AWS_APPRUNNER_API Service& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_APPRUNNER_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The customer-provided service name.

*/ inline const Aws::String& GetServiceName() const{ return m_serviceName; } /** *

The customer-provided service name.

*/ inline bool ServiceNameHasBeenSet() const { return m_serviceNameHasBeenSet; } /** *

The customer-provided service name.

*/ inline void SetServiceName(const Aws::String& value) { m_serviceNameHasBeenSet = true; m_serviceName = value; } /** *

The customer-provided service name.

*/ inline void SetServiceName(Aws::String&& value) { m_serviceNameHasBeenSet = true; m_serviceName = std::move(value); } /** *

The customer-provided service name.

*/ inline void SetServiceName(const char* value) { m_serviceNameHasBeenSet = true; m_serviceName.assign(value); } /** *

The customer-provided service name.

*/ inline Service& WithServiceName(const Aws::String& value) { SetServiceName(value); return *this;} /** *

The customer-provided service name.

*/ inline Service& WithServiceName(Aws::String&& value) { SetServiceName(std::move(value)); return *this;} /** *

The customer-provided service name.

*/ inline Service& WithServiceName(const char* value) { SetServiceName(value); return *this;} /** *

An ID that App Runner generated for this service. It's unique within the * Amazon Web Services Region.

*/ inline const Aws::String& GetServiceId() const{ return m_serviceId; } /** *

An ID that App Runner generated for this service. It's unique within the * Amazon Web Services Region.

*/ inline bool ServiceIdHasBeenSet() const { return m_serviceIdHasBeenSet; } /** *

An ID that App Runner generated for this service. It's unique within the * Amazon Web Services Region.

*/ inline void SetServiceId(const Aws::String& value) { m_serviceIdHasBeenSet = true; m_serviceId = value; } /** *

An ID that App Runner generated for this service. It's unique within the * Amazon Web Services Region.

*/ inline void SetServiceId(Aws::String&& value) { m_serviceIdHasBeenSet = true; m_serviceId = std::move(value); } /** *

An ID that App Runner generated for this service. It's unique within the * Amazon Web Services Region.

*/ inline void SetServiceId(const char* value) { m_serviceIdHasBeenSet = true; m_serviceId.assign(value); } /** *

An ID that App Runner generated for this service. It's unique within the * Amazon Web Services Region.

*/ inline Service& WithServiceId(const Aws::String& value) { SetServiceId(value); return *this;} /** *

An ID that App Runner generated for this service. It's unique within the * Amazon Web Services Region.

*/ inline Service& WithServiceId(Aws::String&& value) { SetServiceId(std::move(value)); return *this;} /** *

An ID that App Runner generated for this service. It's unique within the * Amazon Web Services Region.

*/ inline Service& WithServiceId(const char* value) { SetServiceId(value); return *this;} /** *

The Amazon Resource Name (ARN) of this service.

*/ inline const Aws::String& GetServiceArn() const{ return m_serviceArn; } /** *

The Amazon Resource Name (ARN) of this service.

*/ inline bool ServiceArnHasBeenSet() const { return m_serviceArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of this service.

*/ inline void SetServiceArn(const Aws::String& value) { m_serviceArnHasBeenSet = true; m_serviceArn = value; } /** *

The Amazon Resource Name (ARN) of this service.

*/ inline void SetServiceArn(Aws::String&& value) { m_serviceArnHasBeenSet = true; m_serviceArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of this service.

*/ inline void SetServiceArn(const char* value) { m_serviceArnHasBeenSet = true; m_serviceArn.assign(value); } /** *

The Amazon Resource Name (ARN) of this service.

*/ inline Service& WithServiceArn(const Aws::String& value) { SetServiceArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of this service.

*/ inline Service& WithServiceArn(Aws::String&& value) { SetServiceArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of this service.

*/ inline Service& WithServiceArn(const char* value) { SetServiceArn(value); return *this;} /** *

A subdomain URL that App Runner generated for this service. You can use this * URL to access your service web application.

*/ inline const Aws::String& GetServiceUrl() const{ return m_serviceUrl; } /** *

A subdomain URL that App Runner generated for this service. You can use this * URL to access your service web application.

*/ inline bool ServiceUrlHasBeenSet() const { return m_serviceUrlHasBeenSet; } /** *

A subdomain URL that App Runner generated for this service. You can use this * URL to access your service web application.

*/ inline void SetServiceUrl(const Aws::String& value) { m_serviceUrlHasBeenSet = true; m_serviceUrl = value; } /** *

A subdomain URL that App Runner generated for this service. You can use this * URL to access your service web application.

*/ inline void SetServiceUrl(Aws::String&& value) { m_serviceUrlHasBeenSet = true; m_serviceUrl = std::move(value); } /** *

A subdomain URL that App Runner generated for this service. You can use this * URL to access your service web application.

*/ inline void SetServiceUrl(const char* value) { m_serviceUrlHasBeenSet = true; m_serviceUrl.assign(value); } /** *

A subdomain URL that App Runner generated for this service. You can use this * URL to access your service web application.

*/ inline Service& WithServiceUrl(const Aws::String& value) { SetServiceUrl(value); return *this;} /** *

A subdomain URL that App Runner generated for this service. You can use this * URL to access your service web application.

*/ inline Service& WithServiceUrl(Aws::String&& value) { SetServiceUrl(std::move(value)); return *this;} /** *

A subdomain URL that App Runner generated for this service. You can use this * URL to access your service web application.

*/ inline Service& WithServiceUrl(const char* value) { SetServiceUrl(value); return *this;} /** *

The time when the App Runner service was created. It's in the Unix time stamp * format.

*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *

The time when the App Runner service was created. It's in the Unix time stamp * format.

*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *

The time when the App Runner service was created. It's in the Unix time stamp * format.

*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *

The time when the App Runner service was created. It's in the Unix time stamp * format.

*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } /** *

The time when the App Runner service was created. It's in the Unix time stamp * format.

*/ inline Service& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *

The time when the App Runner service was created. It's in the Unix time stamp * format.

*/ inline Service& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

The time when the App Runner service was last updated at. It's in the Unix * time stamp format.

*/ inline const Aws::Utils::DateTime& GetUpdatedAt() const{ return m_updatedAt; } /** *

The time when the App Runner service was last updated at. It's in the Unix * time stamp format.

*/ inline bool UpdatedAtHasBeenSet() const { return m_updatedAtHasBeenSet; } /** *

The time when the App Runner service was last updated at. It's in the Unix * time stamp format.

*/ inline void SetUpdatedAt(const Aws::Utils::DateTime& value) { m_updatedAtHasBeenSet = true; m_updatedAt = value; } /** *

The time when the App Runner service was last updated at. It's in the Unix * time stamp format.

*/ inline void SetUpdatedAt(Aws::Utils::DateTime&& value) { m_updatedAtHasBeenSet = true; m_updatedAt = std::move(value); } /** *

The time when the App Runner service was last updated at. It's in the Unix * time stamp format.

*/ inline Service& WithUpdatedAt(const Aws::Utils::DateTime& value) { SetUpdatedAt(value); return *this;} /** *

The time when the App Runner service was last updated at. It's in the Unix * time stamp format.

*/ inline Service& WithUpdatedAt(Aws::Utils::DateTime&& value) { SetUpdatedAt(std::move(value)); return *this;} /** *

The time when the App Runner service was deleted. It's in the Unix time stamp * format.

*/ inline const Aws::Utils::DateTime& GetDeletedAt() const{ return m_deletedAt; } /** *

The time when the App Runner service was deleted. It's in the Unix time stamp * format.

*/ inline bool DeletedAtHasBeenSet() const { return m_deletedAtHasBeenSet; } /** *

The time when the App Runner service was deleted. It's in the Unix time stamp * format.

*/ inline void SetDeletedAt(const Aws::Utils::DateTime& value) { m_deletedAtHasBeenSet = true; m_deletedAt = value; } /** *

The time when the App Runner service was deleted. It's in the Unix time stamp * format.

*/ inline void SetDeletedAt(Aws::Utils::DateTime&& value) { m_deletedAtHasBeenSet = true; m_deletedAt = std::move(value); } /** *

The time when the App Runner service was deleted. It's in the Unix time stamp * format.

*/ inline Service& WithDeletedAt(const Aws::Utils::DateTime& value) { SetDeletedAt(value); return *this;} /** *

The time when the App Runner service was deleted. It's in the Unix time stamp * format.

*/ inline Service& WithDeletedAt(Aws::Utils::DateTime&& value) { SetDeletedAt(std::move(value)); 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.

*/ inline const ServiceStatus& GetStatus() const{ return m_status; } /** *

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.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

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.

*/ inline void SetStatus(const ServiceStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

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.

*/ inline void SetStatus(ServiceStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

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.

*/ inline Service& WithStatus(const ServiceStatus& value) { SetStatus(value); 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.

*/ inline Service& WithStatus(ServiceStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The source deployed to the App Runner service. It can be a code or an image * repository.

*/ inline const SourceConfiguration& GetSourceConfiguration() const{ return m_sourceConfiguration; } /** *

The source deployed to the App Runner service. It can be a code or an image * repository.

*/ inline bool SourceConfigurationHasBeenSet() const { return m_sourceConfigurationHasBeenSet; } /** *

The source deployed to the App Runner service. It can be a code or an image * repository.

*/ inline void SetSourceConfiguration(const SourceConfiguration& value) { m_sourceConfigurationHasBeenSet = true; m_sourceConfiguration = value; } /** *

The source deployed to the App Runner service. It can be a code or an image * repository.

*/ inline void SetSourceConfiguration(SourceConfiguration&& value) { m_sourceConfigurationHasBeenSet = true; m_sourceConfiguration = std::move(value); } /** *

The source deployed to the App Runner service. It can be a code or an image * repository.

*/ inline Service& WithSourceConfiguration(const SourceConfiguration& value) { SetSourceConfiguration(value); return *this;} /** *

The source deployed to the App Runner service. It can be a code or an image * repository.

*/ inline Service& WithSourceConfiguration(SourceConfiguration&& value) { SetSourceConfiguration(std::move(value)); return *this;} /** *

The runtime configuration of instances (scaling units) of this service.

*/ inline const InstanceConfiguration& GetInstanceConfiguration() const{ return m_instanceConfiguration; } /** *

The runtime configuration of instances (scaling units) of this service.

*/ inline bool InstanceConfigurationHasBeenSet() const { return m_instanceConfigurationHasBeenSet; } /** *

The runtime configuration of instances (scaling units) of this service.

*/ inline void SetInstanceConfiguration(const InstanceConfiguration& value) { m_instanceConfigurationHasBeenSet = true; m_instanceConfiguration = value; } /** *

The runtime configuration of instances (scaling units) of this service.

*/ inline void SetInstanceConfiguration(InstanceConfiguration&& value) { m_instanceConfigurationHasBeenSet = true; m_instanceConfiguration = std::move(value); } /** *

The runtime configuration of instances (scaling units) of this service.

*/ inline Service& WithInstanceConfiguration(const InstanceConfiguration& value) { SetInstanceConfiguration(value); return *this;} /** *

The runtime configuration of instances (scaling units) of this service.

*/ inline Service& WithInstanceConfiguration(InstanceConfiguration&& value) { SetInstanceConfiguration(std::move(value)); 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.

*/ inline const EncryptionConfiguration& GetEncryptionConfiguration() const{ return m_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.

*/ inline bool EncryptionConfigurationHasBeenSet() const { return m_encryptionConfigurationHasBeenSet; } /** *

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.

*/ inline void SetEncryptionConfiguration(const EncryptionConfiguration& value) { m_encryptionConfigurationHasBeenSet = true; m_encryptionConfiguration = value; } /** *

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.

*/ inline void SetEncryptionConfiguration(EncryptionConfiguration&& value) { m_encryptionConfigurationHasBeenSet = true; m_encryptionConfiguration = std::move(value); } /** *

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.

*/ inline Service& WithEncryptionConfiguration(const EncryptionConfiguration& value) { SetEncryptionConfiguration(value); 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.

*/ inline Service& WithEncryptionConfiguration(EncryptionConfiguration&& value) { SetEncryptionConfiguration(std::move(value)); return *this;} /** *

The settings for the health check that App Runner performs to monitor the * health of this service.

*/ inline const HealthCheckConfiguration& GetHealthCheckConfiguration() const{ return m_healthCheckConfiguration; } /** *

The settings for the health check that App Runner performs to monitor the * health of this service.

*/ inline bool HealthCheckConfigurationHasBeenSet() const { return m_healthCheckConfigurationHasBeenSet; } /** *

The settings for the health check that App Runner performs to monitor the * health of this service.

*/ inline void SetHealthCheckConfiguration(const HealthCheckConfiguration& value) { m_healthCheckConfigurationHasBeenSet = true; m_healthCheckConfiguration = value; } /** *

The settings for the health check that App Runner performs to monitor the * health of this service.

*/ inline void SetHealthCheckConfiguration(HealthCheckConfiguration&& value) { m_healthCheckConfigurationHasBeenSet = true; m_healthCheckConfiguration = std::move(value); } /** *

The settings for the health check that App Runner performs to monitor the * health of this service.

*/ inline Service& WithHealthCheckConfiguration(const HealthCheckConfiguration& value) { SetHealthCheckConfiguration(value); return *this;} /** *

The settings for the health check that App Runner performs to monitor the * health of this service.

*/ inline Service& WithHealthCheckConfiguration(HealthCheckConfiguration&& value) { SetHealthCheckConfiguration(std::move(value)); return *this;} /** *

Summary information for the App Runner automatic scaling configuration * resource that's associated with this service.

*/ inline const AutoScalingConfigurationSummary& GetAutoScalingConfigurationSummary() const{ return m_autoScalingConfigurationSummary; } /** *

Summary information for the App Runner automatic scaling configuration * resource that's associated with this service.

*/ inline bool AutoScalingConfigurationSummaryHasBeenSet() const { return m_autoScalingConfigurationSummaryHasBeenSet; } /** *

Summary information for the App Runner automatic scaling configuration * resource that's associated with this service.

*/ inline void SetAutoScalingConfigurationSummary(const AutoScalingConfigurationSummary& value) { m_autoScalingConfigurationSummaryHasBeenSet = true; m_autoScalingConfigurationSummary = value; } /** *

Summary information for the App Runner automatic scaling configuration * resource that's associated with this service.

*/ inline void SetAutoScalingConfigurationSummary(AutoScalingConfigurationSummary&& value) { m_autoScalingConfigurationSummaryHasBeenSet = true; m_autoScalingConfigurationSummary = std::move(value); } /** *

Summary information for the App Runner automatic scaling configuration * resource that's associated with this service.

*/ inline Service& WithAutoScalingConfigurationSummary(const AutoScalingConfigurationSummary& value) { SetAutoScalingConfigurationSummary(value); return *this;} /** *

Summary information for the App Runner automatic scaling configuration * resource that's associated with this service.

*/ inline Service& WithAutoScalingConfigurationSummary(AutoScalingConfigurationSummary&& value) { SetAutoScalingConfigurationSummary(std::move(value)); return *this;} /** *

Configuration settings related to network traffic of the web application that * this service runs.

*/ inline const NetworkConfiguration& GetNetworkConfiguration() const{ return m_networkConfiguration; } /** *

Configuration settings related to network traffic of the web application that * this service runs.

*/ inline bool NetworkConfigurationHasBeenSet() const { return m_networkConfigurationHasBeenSet; } /** *

Configuration settings related to network traffic of the web application that * this service runs.

*/ inline void SetNetworkConfiguration(const NetworkConfiguration& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = value; } /** *

Configuration settings related to network traffic of the web application that * this service runs.

*/ inline void SetNetworkConfiguration(NetworkConfiguration&& value) { m_networkConfigurationHasBeenSet = true; m_networkConfiguration = std::move(value); } /** *

Configuration settings related to network traffic of the web application that * this service runs.

*/ inline Service& WithNetworkConfiguration(const NetworkConfiguration& value) { SetNetworkConfiguration(value); return *this;} /** *

Configuration settings related to network traffic of the web application that * this service runs.

*/ inline Service& WithNetworkConfiguration(NetworkConfiguration&& value) { SetNetworkConfiguration(std::move(value)); return *this;} /** *

The observability configuration of this service.

*/ inline const ServiceObservabilityConfiguration& GetObservabilityConfiguration() const{ return m_observabilityConfiguration; } /** *

The observability configuration of this service.

*/ inline bool ObservabilityConfigurationHasBeenSet() const { return m_observabilityConfigurationHasBeenSet; } /** *

The observability configuration of this service.

*/ inline void SetObservabilityConfiguration(const ServiceObservabilityConfiguration& value) { m_observabilityConfigurationHasBeenSet = true; m_observabilityConfiguration = value; } /** *

The observability configuration of this service.

*/ inline void SetObservabilityConfiguration(ServiceObservabilityConfiguration&& value) { m_observabilityConfigurationHasBeenSet = true; m_observabilityConfiguration = std::move(value); } /** *

The observability configuration of this service.

*/ inline Service& WithObservabilityConfiguration(const ServiceObservabilityConfiguration& value) { SetObservabilityConfiguration(value); return *this;} /** *

The observability configuration of this service.

*/ inline Service& WithObservabilityConfiguration(ServiceObservabilityConfiguration&& value) { SetObservabilityConfiguration(std::move(value)); return *this;} private: Aws::String m_serviceName; bool m_serviceNameHasBeenSet = false; Aws::String m_serviceId; bool m_serviceIdHasBeenSet = false; Aws::String m_serviceArn; bool m_serviceArnHasBeenSet = false; Aws::String m_serviceUrl; bool m_serviceUrlHasBeenSet = false; Aws::Utils::DateTime m_createdAt; bool m_createdAtHasBeenSet = false; Aws::Utils::DateTime m_updatedAt; bool m_updatedAtHasBeenSet = false; Aws::Utils::DateTime m_deletedAt; bool m_deletedAtHasBeenSet = false; ServiceStatus m_status; bool m_statusHasBeenSet = false; SourceConfiguration m_sourceConfiguration; bool m_sourceConfigurationHasBeenSet = false; InstanceConfiguration m_instanceConfiguration; bool m_instanceConfigurationHasBeenSet = false; EncryptionConfiguration m_encryptionConfiguration; bool m_encryptionConfigurationHasBeenSet = false; HealthCheckConfiguration m_healthCheckConfiguration; bool m_healthCheckConfigurationHasBeenSet = false; AutoScalingConfigurationSummary m_autoScalingConfigurationSummary; bool m_autoScalingConfigurationSummaryHasBeenSet = false; NetworkConfiguration m_networkConfiguration; bool m_networkConfigurationHasBeenSet = false; ServiceObservabilityConfiguration m_observabilityConfiguration; bool m_observabilityConfigurationHasBeenSet = false; }; } // namespace Model } // namespace AppRunner } // namespace Aws