
com.amazonaws.services.lightsail.model.CreateContainerServiceRequest Maven / Gradle / Ivy
/*
* 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.lightsail.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.AmazonWebServiceRequest;
/**
*
* @see AWS
* API Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class CreateContainerServiceRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {
/**
*
* The name for the container service.
*
*
* The name that you specify for your container service will make up part of its default domain. The default domain
* of a container service is typically
* https://<ServiceName>.<RandomGUID>.<AWSRegion>.cs.amazonlightsail.com
. If the name
* of your container service is container-service-1
, and it's located in the US East (Ohio) Amazon Web
* Services Region (us-east-2
), then the domain for your container service will be like the following
* example: https://container-service-1.ur4EXAMPLE2uq.us-east-2.cs.amazonlightsail.com
*
*
* The following are the requirements for container service names:
*
*
* -
*
* Must be unique within each Amazon Web Services Region in your Lightsail account.
*
*
* -
*
* Must contain 1 to 63 characters.
*
*
* -
*
* Must contain only alphanumeric characters and hyphens.
*
*
* -
*
* A hyphen (-) can separate words but cannot be at the start or end of the name.
*
*
*
*/
private String serviceName;
/**
*
* The power specification for the container service.
*
*
* The power specifies the amount of memory, vCPUs, and base monthly cost of each node of the container service. The
* power
and scale
of a container service makes up its configured capacity. To determine
* the monthly price of your container service, multiply the base price of the power
with the
* scale
(the number of nodes) of the service.
*
*
* Use the GetContainerServicePowers
action to get a list of power options that you can specify using
* this parameter, and their base monthly cost.
*
*/
private String power;
/**
*
* The scale specification for the container service.
*
*
* The scale specifies the allocated compute nodes of the container service. The power
and
* scale
of a container service makes up its configured capacity. To determine the monthly price of
* your container service, multiply the base price of the power
with the scale
(the number
* of nodes) of the service.
*
*/
private Integer scale;
/**
*
* The tag keys and optional values to add to the container service during create.
*
*
* Use the TagResource
action to tag a resource after it's created.
*
*
* For more information about tags in Lightsail, see the Amazon Lightsail Developer
* Guide.
*
*/
private java.util.List tags;
/**
*
* The public domain names to use with the container service, such as example.com
and
* www.example.com
.
*
*
* You can specify up to four public domain names for a container service. The domain names that you specify are
* used when you create a deployment with a container configured as the public endpoint of your container service.
*
*
* If you don't specify public domain names, then you can use the default domain of the container service.
*
*
*
* You must create and validate an SSL/TLS certificate before you can use public domain names with your container
* service. Use the CreateCertificate
action to create a certificate for the public domain names you
* want to use with your container service.
*
*
*
* You can specify public domain names using a string to array map as shown in the example later on this page.
*
*/
private java.util.Map> publicDomainNames;
/**
*
* An object that describes a deployment for the container service.
*
*
* A deployment specifies the containers that will be launched on the container service and their settings, such as
* the ports to open, the environment variables to apply, and the launch command to run. It also specifies the
* container that will serve as the public endpoint of the deployment and its settings, such as the HTTP or HTTPS
* port to use, and the health check configuration.
*
*/
private ContainerServiceDeploymentRequest deployment;
/**
*
* An object to describe the configuration for the container service to access private container image repositories,
* such as Amazon Elastic Container Registry (Amazon ECR) private repositories.
*
*
* For more information, see Configuring access to an Amazon ECR private repository for an Amazon Lightsail container service in the
* Amazon Lightsail Developer Guide.
*
*/
private PrivateRegistryAccessRequest privateRegistryAccess;
/**
*
* The name for the container service.
*
*
* The name that you specify for your container service will make up part of its default domain. The default domain
* of a container service is typically
* https://<ServiceName>.<RandomGUID>.<AWSRegion>.cs.amazonlightsail.com
. If the name
* of your container service is container-service-1
, and it's located in the US East (Ohio) Amazon Web
* Services Region (us-east-2
), then the domain for your container service will be like the following
* example: https://container-service-1.ur4EXAMPLE2uq.us-east-2.cs.amazonlightsail.com
*
*
* The following are the requirements for container service names:
*
*
* -
*
* Must be unique within each Amazon Web Services Region in your Lightsail account.
*
*
* -
*
* Must contain 1 to 63 characters.
*
*
* -
*
* Must contain only alphanumeric characters and hyphens.
*
*
* -
*
* A hyphen (-) can separate words but cannot be at the start or end of the name.
*
*
*
*
* @param serviceName
* The name for the container service.
*
* The name that you specify for your container service will make up part of its default domain. The default
* domain of a container service is typically
* https://<ServiceName>.<RandomGUID>.<AWSRegion>.cs.amazonlightsail.com
. If
* the name of your container service is container-service-1
, and it's located in the US East
* (Ohio) Amazon Web Services Region (us-east-2
), then the domain for your container service
* will be like the following example:
* https://container-service-1.ur4EXAMPLE2uq.us-east-2.cs.amazonlightsail.com
*
*
* The following are the requirements for container service names:
*
*
* -
*
* Must be unique within each Amazon Web Services Region in your Lightsail account.
*
*
* -
*
* Must contain 1 to 63 characters.
*
*
* -
*
* Must contain only alphanumeric characters and hyphens.
*
*
* -
*
* A hyphen (-) can separate words but cannot be at the start or end of the name.
*
*
*/
public void setServiceName(String serviceName) {
this.serviceName = serviceName;
}
/**
*
* The name for the container service.
*
*
* The name that you specify for your container service will make up part of its default domain. The default domain
* of a container service is typically
* https://<ServiceName>.<RandomGUID>.<AWSRegion>.cs.amazonlightsail.com
. If the name
* of your container service is container-service-1
, and it's located in the US East (Ohio) Amazon Web
* Services Region (us-east-2
), then the domain for your container service will be like the following
* example: https://container-service-1.ur4EXAMPLE2uq.us-east-2.cs.amazonlightsail.com
*
*
* The following are the requirements for container service names:
*
*
* -
*
* Must be unique within each Amazon Web Services Region in your Lightsail account.
*
*
* -
*
* Must contain 1 to 63 characters.
*
*
* -
*
* Must contain only alphanumeric characters and hyphens.
*
*
* -
*
* A hyphen (-) can separate words but cannot be at the start or end of the name.
*
*
*
*
* @return The name for the container service.
*
* The name that you specify for your container service will make up part of its default domain. The default
* domain of a container service is typically
* https://<ServiceName>.<RandomGUID>.<AWSRegion>.cs.amazonlightsail.com
. If
* the name of your container service is container-service-1
, and it's located in the US East
* (Ohio) Amazon Web Services Region (us-east-2
), then the domain for your container service
* will be like the following example:
* https://container-service-1.ur4EXAMPLE2uq.us-east-2.cs.amazonlightsail.com
*
*
* The following are the requirements for container service names:
*
*
* -
*
* Must be unique within each Amazon Web Services Region in your Lightsail account.
*
*
* -
*
* Must contain 1 to 63 characters.
*
*
* -
*
* Must contain only alphanumeric characters and hyphens.
*
*
* -
*
* A hyphen (-) can separate words but cannot be at the start or end of the name.
*
*
*/
public String getServiceName() {
return this.serviceName;
}
/**
*
* The name for the container service.
*
*
* The name that you specify for your container service will make up part of its default domain. The default domain
* of a container service is typically
* https://<ServiceName>.<RandomGUID>.<AWSRegion>.cs.amazonlightsail.com
. If the name
* of your container service is container-service-1
, and it's located in the US East (Ohio) Amazon Web
* Services Region (us-east-2
), then the domain for your container service will be like the following
* example: https://container-service-1.ur4EXAMPLE2uq.us-east-2.cs.amazonlightsail.com
*
*
* The following are the requirements for container service names:
*
*
* -
*
* Must be unique within each Amazon Web Services Region in your Lightsail account.
*
*
* -
*
* Must contain 1 to 63 characters.
*
*
* -
*
* Must contain only alphanumeric characters and hyphens.
*
*
* -
*
* A hyphen (-) can separate words but cannot be at the start or end of the name.
*
*
*
*
* @param serviceName
* The name for the container service.
*
* The name that you specify for your container service will make up part of its default domain. The default
* domain of a container service is typically
* https://<ServiceName>.<RandomGUID>.<AWSRegion>.cs.amazonlightsail.com
. If
* the name of your container service is container-service-1
, and it's located in the US East
* (Ohio) Amazon Web Services Region (us-east-2
), then the domain for your container service
* will be like the following example:
* https://container-service-1.ur4EXAMPLE2uq.us-east-2.cs.amazonlightsail.com
*
*
* The following are the requirements for container service names:
*
*
* -
*
* Must be unique within each Amazon Web Services Region in your Lightsail account.
*
*
* -
*
* Must contain 1 to 63 characters.
*
*
* -
*
* Must contain only alphanumeric characters and hyphens.
*
*
* -
*
* A hyphen (-) can separate words but cannot be at the start or end of the name.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateContainerServiceRequest withServiceName(String serviceName) {
setServiceName(serviceName);
return this;
}
/**
*
* The power specification for the container service.
*
*
* The power specifies the amount of memory, vCPUs, and base monthly cost of each node of the container service. The
* power
and scale
of a container service makes up its configured capacity. To determine
* the monthly price of your container service, multiply the base price of the power
with the
* scale
(the number of nodes) of the service.
*
*
* Use the GetContainerServicePowers
action to get a list of power options that you can specify using
* this parameter, and their base monthly cost.
*
*
* @param power
* The power specification for the container service.
*
* The power specifies the amount of memory, vCPUs, and base monthly cost of each node of the container
* service. The power
and scale
of a container service makes up its configured
* capacity. To determine the monthly price of your container service, multiply the base price of the
* power
with the scale
(the number of nodes) of the service.
*
*
* Use the GetContainerServicePowers
action to get a list of power options that you can specify
* using this parameter, and their base monthly cost.
* @see ContainerServicePowerName
*/
public void setPower(String power) {
this.power = power;
}
/**
*
* The power specification for the container service.
*
*
* The power specifies the amount of memory, vCPUs, and base monthly cost of each node of the container service. The
* power
and scale
of a container service makes up its configured capacity. To determine
* the monthly price of your container service, multiply the base price of the power
with the
* scale
(the number of nodes) of the service.
*
*
* Use the GetContainerServicePowers
action to get a list of power options that you can specify using
* this parameter, and their base monthly cost.
*
*
* @return The power specification for the container service.
*
* The power specifies the amount of memory, vCPUs, and base monthly cost of each node of the container
* service. The power
and scale
of a container service makes up its configured
* capacity. To determine the monthly price of your container service, multiply the base price of the
* power
with the scale
(the number of nodes) of the service.
*
*
* Use the GetContainerServicePowers
action to get a list of power options that you can specify
* using this parameter, and their base monthly cost.
* @see ContainerServicePowerName
*/
public String getPower() {
return this.power;
}
/**
*
* The power specification for the container service.
*
*
* The power specifies the amount of memory, vCPUs, and base monthly cost of each node of the container service. The
* power
and scale
of a container service makes up its configured capacity. To determine
* the monthly price of your container service, multiply the base price of the power
with the
* scale
(the number of nodes) of the service.
*
*
* Use the GetContainerServicePowers
action to get a list of power options that you can specify using
* this parameter, and their base monthly cost.
*
*
* @param power
* The power specification for the container service.
*
* The power specifies the amount of memory, vCPUs, and base monthly cost of each node of the container
* service. The power
and scale
of a container service makes up its configured
* capacity. To determine the monthly price of your container service, multiply the base price of the
* power
with the scale
(the number of nodes) of the service.
*
*
* Use the GetContainerServicePowers
action to get a list of power options that you can specify
* using this parameter, and their base monthly cost.
* @return Returns a reference to this object so that method calls can be chained together.
* @see ContainerServicePowerName
*/
public CreateContainerServiceRequest withPower(String power) {
setPower(power);
return this;
}
/**
*
* The power specification for the container service.
*
*
* The power specifies the amount of memory, vCPUs, and base monthly cost of each node of the container service. The
* power
and scale
of a container service makes up its configured capacity. To determine
* the monthly price of your container service, multiply the base price of the power
with the
* scale
(the number of nodes) of the service.
*
*
* Use the GetContainerServicePowers
action to get a list of power options that you can specify using
* this parameter, and their base monthly cost.
*
*
* @param power
* The power specification for the container service.
*
* The power specifies the amount of memory, vCPUs, and base monthly cost of each node of the container
* service. The power
and scale
of a container service makes up its configured
* capacity. To determine the monthly price of your container service, multiply the base price of the
* power
with the scale
(the number of nodes) of the service.
*
*
* Use the GetContainerServicePowers
action to get a list of power options that you can specify
* using this parameter, and their base monthly cost.
* @return Returns a reference to this object so that method calls can be chained together.
* @see ContainerServicePowerName
*/
public CreateContainerServiceRequest withPower(ContainerServicePowerName power) {
this.power = power.toString();
return this;
}
/**
*
* The scale specification for the container service.
*
*
* The scale specifies the allocated compute nodes of the container service. The power
and
* scale
of a container service makes up its configured capacity. To determine the monthly price of
* your container service, multiply the base price of the power
with the scale
(the number
* of nodes) of the service.
*
*
* @param scale
* The scale specification for the container service.
*
* The scale specifies the allocated compute nodes of the container service. The power
and
* scale
of a container service makes up its configured capacity. To determine the monthly price
* of your container service, multiply the base price of the power
with the scale
* (the number of nodes) of the service.
*/
public void setScale(Integer scale) {
this.scale = scale;
}
/**
*
* The scale specification for the container service.
*
*
* The scale specifies the allocated compute nodes of the container service. The power
and
* scale
of a container service makes up its configured capacity. To determine the monthly price of
* your container service, multiply the base price of the power
with the scale
(the number
* of nodes) of the service.
*
*
* @return The scale specification for the container service.
*
* The scale specifies the allocated compute nodes of the container service. The power
and
* scale
of a container service makes up its configured capacity. To determine the monthly
* price of your container service, multiply the base price of the power
with the
* scale
(the number of nodes) of the service.
*/
public Integer getScale() {
return this.scale;
}
/**
*
* The scale specification for the container service.
*
*
* The scale specifies the allocated compute nodes of the container service. The power
and
* scale
of a container service makes up its configured capacity. To determine the monthly price of
* your container service, multiply the base price of the power
with the scale
(the number
* of nodes) of the service.
*
*
* @param scale
* The scale specification for the container service.
*
* The scale specifies the allocated compute nodes of the container service. The power
and
* scale
of a container service makes up its configured capacity. To determine the monthly price
* of your container service, multiply the base price of the power
with the scale
* (the number of nodes) of the service.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateContainerServiceRequest withScale(Integer scale) {
setScale(scale);
return this;
}
/**
*
* The tag keys and optional values to add to the container service during create.
*
*
* Use the TagResource
action to tag a resource after it's created.
*
*
* For more information about tags in Lightsail, see the Amazon Lightsail Developer
* Guide.
*
*
* @return The tag keys and optional values to add to the container service during create.
*
* Use the TagResource
action to tag a resource after it's created.
*
*
* For more information about tags in Lightsail, see the Amazon Lightsail
* Developer Guide.
*/
public java.util.List getTags() {
return tags;
}
/**
*
* The tag keys and optional values to add to the container service during create.
*
*
* Use the TagResource
action to tag a resource after it's created.
*
*
* For more information about tags in Lightsail, see the Amazon Lightsail Developer
* Guide.
*
*
* @param tags
* The tag keys and optional values to add to the container service during create.
*
* Use the TagResource
action to tag a resource after it's created.
*
*
* For more information about tags in Lightsail, see the Amazon Lightsail
* Developer Guide.
*/
public void setTags(java.util.Collection tags) {
if (tags == null) {
this.tags = null;
return;
}
this.tags = new java.util.ArrayList(tags);
}
/**
*
* The tag keys and optional values to add to the container service during create.
*
*
* Use the TagResource
action to tag a resource after it's created.
*
*
* For more information about tags in Lightsail, see the Amazon Lightsail Developer
* Guide.
*
*
* 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 tag keys and optional values to add to the container service during create.
*
* Use the TagResource
action to tag a resource after it's created.
*
*
* For more information about tags in Lightsail, see the Amazon Lightsail
* Developer Guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateContainerServiceRequest withTags(Tag... tags) {
if (this.tags == null) {
setTags(new java.util.ArrayList(tags.length));
}
for (Tag ele : tags) {
this.tags.add(ele);
}
return this;
}
/**
*
* The tag keys and optional values to add to the container service during create.
*
*
* Use the TagResource
action to tag a resource after it's created.
*
*
* For more information about tags in Lightsail, see the Amazon Lightsail Developer
* Guide.
*
*
* @param tags
* The tag keys and optional values to add to the container service during create.
*
* Use the TagResource
action to tag a resource after it's created.
*
*
* For more information about tags in Lightsail, see the Amazon Lightsail
* Developer Guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateContainerServiceRequest withTags(java.util.Collection tags) {
setTags(tags);
return this;
}
/**
*
* The public domain names to use with the container service, such as example.com
and
* www.example.com
.
*
*
* You can specify up to four public domain names for a container service. The domain names that you specify are
* used when you create a deployment with a container configured as the public endpoint of your container service.
*
*
* If you don't specify public domain names, then you can use the default domain of the container service.
*
*
*
* You must create and validate an SSL/TLS certificate before you can use public domain names with your container
* service. Use the CreateCertificate
action to create a certificate for the public domain names you
* want to use with your container service.
*
*
*
* You can specify public domain names using a string to array map as shown in the example later on this page.
*
*
* @return The public domain names to use with the container service, such as example.com
and
* www.example.com
.
*
* You can specify up to four public domain names for a container service. The domain names that you specify
* are used when you create a deployment with a container configured as the public endpoint of your
* container service.
*
*
* If you don't specify public domain names, then you can use the default domain of the container service.
*
*
*
* You must create and validate an SSL/TLS certificate before you can use public domain names with your
* container service. Use the CreateCertificate
action to create a certificate for the public
* domain names you want to use with your container service.
*
*
*
* You can specify public domain names using a string to array map as shown in the example later on this
* page.
*/
public java.util.Map> getPublicDomainNames() {
return publicDomainNames;
}
/**
*
* The public domain names to use with the container service, such as example.com
and
* www.example.com
.
*
*
* You can specify up to four public domain names for a container service. The domain names that you specify are
* used when you create a deployment with a container configured as the public endpoint of your container service.
*
*
* If you don't specify public domain names, then you can use the default domain of the container service.
*
*
*
* You must create and validate an SSL/TLS certificate before you can use public domain names with your container
* service. Use the CreateCertificate
action to create a certificate for the public domain names you
* want to use with your container service.
*
*
*
* You can specify public domain names using a string to array map as shown in the example later on this page.
*
*
* @param publicDomainNames
* The public domain names to use with the container service, such as example.com
and
* www.example.com
.
*
* You can specify up to four public domain names for a container service. The domain names that you specify
* are used when you create a deployment with a container configured as the public endpoint of your container
* service.
*
*
* If you don't specify public domain names, then you can use the default domain of the container service.
*
*
*
* You must create and validate an SSL/TLS certificate before you can use public domain names with your
* container service. Use the CreateCertificate
action to create a certificate for the public
* domain names you want to use with your container service.
*
*
*
* You can specify public domain names using a string to array map as shown in the example later on this
* page.
*/
public void setPublicDomainNames(java.util.Map> publicDomainNames) {
this.publicDomainNames = publicDomainNames;
}
/**
*
* The public domain names to use with the container service, such as example.com
and
* www.example.com
.
*
*
* You can specify up to four public domain names for a container service. The domain names that you specify are
* used when you create a deployment with a container configured as the public endpoint of your container service.
*
*
* If you don't specify public domain names, then you can use the default domain of the container service.
*
*
*
* You must create and validate an SSL/TLS certificate before you can use public domain names with your container
* service. Use the CreateCertificate
action to create a certificate for the public domain names you
* want to use with your container service.
*
*
*
* You can specify public domain names using a string to array map as shown in the example later on this page.
*
*
* @param publicDomainNames
* The public domain names to use with the container service, such as example.com
and
* www.example.com
.
*
* You can specify up to four public domain names for a container service. The domain names that you specify
* are used when you create a deployment with a container configured as the public endpoint of your container
* service.
*
*
* If you don't specify public domain names, then you can use the default domain of the container service.
*
*
*
* You must create and validate an SSL/TLS certificate before you can use public domain names with your
* container service. Use the CreateCertificate
action to create a certificate for the public
* domain names you want to use with your container service.
*
*
*
* You can specify public domain names using a string to array map as shown in the example later on this
* page.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateContainerServiceRequest withPublicDomainNames(java.util.Map> publicDomainNames) {
setPublicDomainNames(publicDomainNames);
return this;
}
/**
* Add a single PublicDomainNames entry
*
* @see CreateContainerServiceRequest#withPublicDomainNames
* @returns a reference to this object so that method calls can be chained together.
*/
public CreateContainerServiceRequest addPublicDomainNamesEntry(String key, java.util.List value) {
if (null == this.publicDomainNames) {
this.publicDomainNames = new java.util.HashMap>();
}
if (this.publicDomainNames.containsKey(key))
throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided.");
this.publicDomainNames.put(key, value);
return this;
}
/**
* Removes all the entries added into PublicDomainNames.
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateContainerServiceRequest clearPublicDomainNamesEntries() {
this.publicDomainNames = null;
return this;
}
/**
*
* An object that describes a deployment for the container service.
*
*
* A deployment specifies the containers that will be launched on the container service and their settings, such as
* the ports to open, the environment variables to apply, and the launch command to run. It also specifies the
* container that will serve as the public endpoint of the deployment and its settings, such as the HTTP or HTTPS
* port to use, and the health check configuration.
*
*
* @param deployment
* An object that describes a deployment for the container service.
*
* A deployment specifies the containers that will be launched on the container service and their settings,
* such as the ports to open, the environment variables to apply, and the launch command to run. It also
* specifies the container that will serve as the public endpoint of the deployment and its settings, such as
* the HTTP or HTTPS port to use, and the health check configuration.
*/
public void setDeployment(ContainerServiceDeploymentRequest deployment) {
this.deployment = deployment;
}
/**
*
* An object that describes a deployment for the container service.
*
*
* A deployment specifies the containers that will be launched on the container service and their settings, such as
* the ports to open, the environment variables to apply, and the launch command to run. It also specifies the
* container that will serve as the public endpoint of the deployment and its settings, such as the HTTP or HTTPS
* port to use, and the health check configuration.
*
*
* @return An object that describes a deployment for the container service.
*
* A deployment specifies the containers that will be launched on the container service and their settings,
* such as the ports to open, the environment variables to apply, and the launch command to run. It also
* specifies the container that will serve as the public endpoint of the deployment and its settings, such
* as the HTTP or HTTPS port to use, and the health check configuration.
*/
public ContainerServiceDeploymentRequest getDeployment() {
return this.deployment;
}
/**
*
* An object that describes a deployment for the container service.
*
*
* A deployment specifies the containers that will be launched on the container service and their settings, such as
* the ports to open, the environment variables to apply, and the launch command to run. It also specifies the
* container that will serve as the public endpoint of the deployment and its settings, such as the HTTP or HTTPS
* port to use, and the health check configuration.
*
*
* @param deployment
* An object that describes a deployment for the container service.
*
* A deployment specifies the containers that will be launched on the container service and their settings,
* such as the ports to open, the environment variables to apply, and the launch command to run. It also
* specifies the container that will serve as the public endpoint of the deployment and its settings, such as
* the HTTP or HTTPS port to use, and the health check configuration.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateContainerServiceRequest withDeployment(ContainerServiceDeploymentRequest deployment) {
setDeployment(deployment);
return this;
}
/**
*
* An object to describe the configuration for the container service to access private container image repositories,
* such as Amazon Elastic Container Registry (Amazon ECR) private repositories.
*
*
* For more information, see Configuring access to an Amazon ECR private repository for an Amazon Lightsail container service in the
* Amazon Lightsail Developer Guide.
*
*
* @param privateRegistryAccess
* An object to describe the configuration for the container service to access private container image
* repositories, such as Amazon Elastic Container Registry (Amazon ECR) private repositories.
*
* For more information, see Configuring access to an Amazon ECR private repository for an Amazon Lightsail container service in
* the Amazon Lightsail Developer Guide.
*/
public void setPrivateRegistryAccess(PrivateRegistryAccessRequest privateRegistryAccess) {
this.privateRegistryAccess = privateRegistryAccess;
}
/**
*
* An object to describe the configuration for the container service to access private container image repositories,
* such as Amazon Elastic Container Registry (Amazon ECR) private repositories.
*
*
* For more information, see Configuring access to an Amazon ECR private repository for an Amazon Lightsail container service in the
* Amazon Lightsail Developer Guide.
*
*
* @return An object to describe the configuration for the container service to access private container image
* repositories, such as Amazon Elastic Container Registry (Amazon ECR) private repositories.
*
* For more information, see Configuring access to an Amazon ECR private repository for an Amazon Lightsail container service in
* the Amazon Lightsail Developer Guide.
*/
public PrivateRegistryAccessRequest getPrivateRegistryAccess() {
return this.privateRegistryAccess;
}
/**
*
* An object to describe the configuration for the container service to access private container image repositories,
* such as Amazon Elastic Container Registry (Amazon ECR) private repositories.
*
*
* For more information, see Configuring access to an Amazon ECR private repository for an Amazon Lightsail container service in the
* Amazon Lightsail Developer Guide.
*
*
* @param privateRegistryAccess
* An object to describe the configuration for the container service to access private container image
* repositories, such as Amazon Elastic Container Registry (Amazon ECR) private repositories.
*
* For more information, see Configuring access to an Amazon ECR private repository for an Amazon Lightsail container service in
* the Amazon Lightsail Developer Guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateContainerServiceRequest withPrivateRegistryAccess(PrivateRegistryAccessRequest privateRegistryAccess) {
setPrivateRegistryAccess(privateRegistryAccess);
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 (getPower() != null)
sb.append("Power: ").append(getPower()).append(",");
if (getScale() != null)
sb.append("Scale: ").append(getScale()).append(",");
if (getTags() != null)
sb.append("Tags: ").append(getTags()).append(",");
if (getPublicDomainNames() != null)
sb.append("PublicDomainNames: ").append(getPublicDomainNames()).append(",");
if (getDeployment() != null)
sb.append("Deployment: ").append(getDeployment()).append(",");
if (getPrivateRegistryAccess() != null)
sb.append("PrivateRegistryAccess: ").append(getPrivateRegistryAccess());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof CreateContainerServiceRequest == false)
return false;
CreateContainerServiceRequest other = (CreateContainerServiceRequest) obj;
if (other.getServiceName() == null ^ this.getServiceName() == null)
return false;
if (other.getServiceName() != null && other.getServiceName().equals(this.getServiceName()) == false)
return false;
if (other.getPower() == null ^ this.getPower() == null)
return false;
if (other.getPower() != null && other.getPower().equals(this.getPower()) == false)
return false;
if (other.getScale() == null ^ this.getScale() == null)
return false;
if (other.getScale() != null && other.getScale().equals(this.getScale()) == false)
return false;
if (other.getTags() == null ^ this.getTags() == null)
return false;
if (other.getTags() != null && other.getTags().equals(this.getTags()) == false)
return false;
if (other.getPublicDomainNames() == null ^ this.getPublicDomainNames() == null)
return false;
if (other.getPublicDomainNames() != null && other.getPublicDomainNames().equals(this.getPublicDomainNames()) == false)
return false;
if (other.getDeployment() == null ^ this.getDeployment() == null)
return false;
if (other.getDeployment() != null && other.getDeployment().equals(this.getDeployment()) == false)
return false;
if (other.getPrivateRegistryAccess() == null ^ this.getPrivateRegistryAccess() == null)
return false;
if (other.getPrivateRegistryAccess() != null && other.getPrivateRegistryAccess().equals(this.getPrivateRegistryAccess()) == 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 + ((getPower() == null) ? 0 : getPower().hashCode());
hashCode = prime * hashCode + ((getScale() == null) ? 0 : getScale().hashCode());
hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode());
hashCode = prime * hashCode + ((getPublicDomainNames() == null) ? 0 : getPublicDomainNames().hashCode());
hashCode = prime * hashCode + ((getDeployment() == null) ? 0 : getDeployment().hashCode());
hashCode = prime * hashCode + ((getPrivateRegistryAccess() == null) ? 0 : getPrivateRegistryAccess().hashCode());
return hashCode;
}
@Override
public CreateContainerServiceRequest clone() {
return (CreateContainerServiceRequest) super.clone();
}
}