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

com.amazonaws.services.serverlessapplicationrepository.model.Version Maven / Gradle / Ivy

Go to download

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

The newest version!
/*
 * Copyright 2019-2024 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.serverlessapplicationrepository.model;

import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;

/**
 * 

* Application version details. *

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

* The application Amazon Resource Name (ARN). *

*/ private String applicationId; /** *

* The date and time this resource was created. *

*/ private String creationTime; /** *

* An array of parameter types supported by the application. *

*/ private java.util.List parameterDefinitions; /** *

* A list of values that you must specify before you can deploy certain applications. Some applications might * include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and * Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities by * specifying this parameter. *

*

* The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY, and * CAPABILITY_AUTO_EXPAND. *

*

* The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or * CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. *

*

* The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::Lambda::Permission, AWS::IAM:Policy, AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS::TopicPolicy. *

*

* Applications that contain one or more nested applications require you to specify CAPABILITY_AUTO_EXPAND. *

*

* If your application template contains any of the above resources, we recommend that you review all permissions * associated with the application before deploying. If you don't specify this parameter for an application that * requires capabilities, the call will fail. *

*/ private java.util.List requiredCapabilities; /** *

* Whether all of the AWS resources contained in this application are supported in the region in which it is being * retrieved. *

*/ private Boolean resourcesSupported; /** *

* The semantic version of the application: *

*

* https://semver.org/ *

*/ private String semanticVersion; /** *

* A link to the S3 object that contains the ZIP archive of the source code for this version of your application. *

*

* Maximum size 50 MB *

*/ private String sourceCodeArchiveUrl; /** *

* A link to a public repository for the source code of your application, for example the URL of a specific GitHub * commit. *

*/ private String sourceCodeUrl; /** *

* A link to the packaged AWS SAM template of your application. *

*/ private String templateUrl; /** *

* The application Amazon Resource Name (ARN). *

* * @param applicationId * The application Amazon Resource Name (ARN). */ public void setApplicationId(String applicationId) { this.applicationId = applicationId; } /** *

* The application Amazon Resource Name (ARN). *

* * @return The application Amazon Resource Name (ARN). */ public String getApplicationId() { return this.applicationId; } /** *

* The application Amazon Resource Name (ARN). *

* * @param applicationId * The application Amazon Resource Name (ARN). * @return Returns a reference to this object so that method calls can be chained together. */ public Version withApplicationId(String applicationId) { setApplicationId(applicationId); return this; } /** *

* The date and time this resource was created. *

* * @param creationTime * The date and time this resource was created. */ public void setCreationTime(String creationTime) { this.creationTime = creationTime; } /** *

* The date and time this resource was created. *

* * @return The date and time this resource was created. */ public String getCreationTime() { return this.creationTime; } /** *

* The date and time this resource was created. *

* * @param creationTime * The date and time this resource was created. * @return Returns a reference to this object so that method calls can be chained together. */ public Version withCreationTime(String creationTime) { setCreationTime(creationTime); return this; } /** *

* An array of parameter types supported by the application. *

* * @return An array of parameter types supported by the application. */ public java.util.List getParameterDefinitions() { return parameterDefinitions; } /** *

* An array of parameter types supported by the application. *

* * @param parameterDefinitions * An array of parameter types supported by the application. */ public void setParameterDefinitions(java.util.Collection parameterDefinitions) { if (parameterDefinitions == null) { this.parameterDefinitions = null; return; } this.parameterDefinitions = new java.util.ArrayList(parameterDefinitions); } /** *

* An array of parameter types supported by the application. *

*

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

* * @param parameterDefinitions * An array of parameter types supported by the application. * @return Returns a reference to this object so that method calls can be chained together. */ public Version withParameterDefinitions(ParameterDefinition... parameterDefinitions) { if (this.parameterDefinitions == null) { setParameterDefinitions(new java.util.ArrayList(parameterDefinitions.length)); } for (ParameterDefinition ele : parameterDefinitions) { this.parameterDefinitions.add(ele); } return this; } /** *

* An array of parameter types supported by the application. *

* * @param parameterDefinitions * An array of parameter types supported by the application. * @return Returns a reference to this object so that method calls can be chained together. */ public Version withParameterDefinitions(java.util.Collection parameterDefinitions) { setParameterDefinitions(parameterDefinitions); return this; } /** *

* A list of values that you must specify before you can deploy certain applications. Some applications might * include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and * Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities by * specifying this parameter. *

*

* The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY, and * CAPABILITY_AUTO_EXPAND. *

*

* The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or * CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. *

*

* The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::Lambda::Permission, AWS::IAM:Policy, AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS::TopicPolicy. *

*

* Applications that contain one or more nested applications require you to specify CAPABILITY_AUTO_EXPAND. *

*

* If your application template contains any of the above resources, we recommend that you review all permissions * associated with the application before deploying. If you don't specify this parameter for an application that * requires capabilities, the call will fail. *

* * @return A list of values that you must specify before you can deploy certain applications. Some applications * might include resources that can affect permissions in your AWS account, for example, by creating new AWS * Identity and Access Management (IAM) users. For those applications, you must explicitly acknowledge their * capabilities by specifying this parameter.

*

* The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY, and * CAPABILITY_AUTO_EXPAND. *

*

* The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or * CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. *

*

* The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::Lambda::Permission, AWS::IAM:Policy, AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS::TopicPolicy. *

*

* Applications that contain one or more nested applications require you to specify CAPABILITY_AUTO_EXPAND. *

*

* If your application template contains any of the above resources, we recommend that you review all * permissions associated with the application before deploying. If you don't specify this parameter for an * application that requires capabilities, the call will fail. * @see Capability */ public java.util.List getRequiredCapabilities() { return requiredCapabilities; } /** *

* A list of values that you must specify before you can deploy certain applications. Some applications might * include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and * Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities by * specifying this parameter. *

*

* The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY, and * CAPABILITY_AUTO_EXPAND. *

*

* The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or * CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. *

*

* The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::Lambda::Permission, AWS::IAM:Policy, AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS::TopicPolicy. *

*

* Applications that contain one or more nested applications require you to specify CAPABILITY_AUTO_EXPAND. *

*

* If your application template contains any of the above resources, we recommend that you review all permissions * associated with the application before deploying. If you don't specify this parameter for an application that * requires capabilities, the call will fail. *

* * @param requiredCapabilities * A list of values that you must specify before you can deploy certain applications. Some applications might * include resources that can affect permissions in your AWS account, for example, by creating new AWS * Identity and Access Management (IAM) users. For those applications, you must explicitly acknowledge their * capabilities by specifying this parameter.

*

* The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY, and * CAPABILITY_AUTO_EXPAND. *

*

* The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or * CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. *

*

* The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::Lambda::Permission, AWS::IAM:Policy, AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS::TopicPolicy. *

*

* Applications that contain one or more nested applications require you to specify CAPABILITY_AUTO_EXPAND. *

*

* If your application template contains any of the above resources, we recommend that you review all * permissions associated with the application before deploying. If you don't specify this parameter for an * application that requires capabilities, the call will fail. * @see Capability */ public void setRequiredCapabilities(java.util.Collection requiredCapabilities) { if (requiredCapabilities == null) { this.requiredCapabilities = null; return; } this.requiredCapabilities = new java.util.ArrayList(requiredCapabilities); } /** *

* A list of values that you must specify before you can deploy certain applications. Some applications might * include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and * Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities by * specifying this parameter. *

*

* The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY, and * CAPABILITY_AUTO_EXPAND. *

*

* The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or * CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. *

*

* The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::Lambda::Permission, AWS::IAM:Policy, AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS::TopicPolicy. *

*

* Applications that contain one or more nested applications require you to specify CAPABILITY_AUTO_EXPAND. *

*

* If your application template contains any of the above resources, we recommend that you review all permissions * associated with the application before deploying. If you don't specify this parameter for an application that * requires capabilities, the call will fail. *

*

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

* * @param requiredCapabilities * A list of values that you must specify before you can deploy certain applications. Some applications might * include resources that can affect permissions in your AWS account, for example, by creating new AWS * Identity and Access Management (IAM) users. For those applications, you must explicitly acknowledge their * capabilities by specifying this parameter.

*

* The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY, and * CAPABILITY_AUTO_EXPAND. *

*

* The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or * CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. *

*

* The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::Lambda::Permission, AWS::IAM:Policy, AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS::TopicPolicy. *

*

* Applications that contain one or more nested applications require you to specify CAPABILITY_AUTO_EXPAND. *

*

* If your application template contains any of the above resources, we recommend that you review all * permissions associated with the application before deploying. If you don't specify this parameter for an * application that requires capabilities, the call will fail. * @return Returns a reference to this object so that method calls can be chained together. * @see Capability */ public Version withRequiredCapabilities(String... requiredCapabilities) { if (this.requiredCapabilities == null) { setRequiredCapabilities(new java.util.ArrayList(requiredCapabilities.length)); } for (String ele : requiredCapabilities) { this.requiredCapabilities.add(ele); } return this; } /** *

* A list of values that you must specify before you can deploy certain applications. Some applications might * include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and * Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities by * specifying this parameter. *

*

* The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY, and * CAPABILITY_AUTO_EXPAND. *

*

* The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or * CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. *

*

* The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::Lambda::Permission, AWS::IAM:Policy, AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS::TopicPolicy. *

*

* Applications that contain one or more nested applications require you to specify CAPABILITY_AUTO_EXPAND. *

*

* If your application template contains any of the above resources, we recommend that you review all permissions * associated with the application before deploying. If you don't specify this parameter for an application that * requires capabilities, the call will fail. *

* * @param requiredCapabilities * A list of values that you must specify before you can deploy certain applications. Some applications might * include resources that can affect permissions in your AWS account, for example, by creating new AWS * Identity and Access Management (IAM) users. For those applications, you must explicitly acknowledge their * capabilities by specifying this parameter.

*

* The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY, and * CAPABILITY_AUTO_EXPAND. *

*

* The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or * CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. *

*

* The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::Lambda::Permission, AWS::IAM:Policy, AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS::TopicPolicy. *

*

* Applications that contain one or more nested applications require you to specify CAPABILITY_AUTO_EXPAND. *

*

* If your application template contains any of the above resources, we recommend that you review all * permissions associated with the application before deploying. If you don't specify this parameter for an * application that requires capabilities, the call will fail. * @return Returns a reference to this object so that method calls can be chained together. * @see Capability */ public Version withRequiredCapabilities(java.util.Collection requiredCapabilities) { setRequiredCapabilities(requiredCapabilities); return this; } /** *

* A list of values that you must specify before you can deploy certain applications. Some applications might * include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and * Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities by * specifying this parameter. *

*

* The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY, and * CAPABILITY_AUTO_EXPAND. *

*

* The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or * CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. *

*

* The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::Lambda::Permission, AWS::IAM:Policy, AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS::TopicPolicy. *

*

* Applications that contain one or more nested applications require you to specify CAPABILITY_AUTO_EXPAND. *

*

* If your application template contains any of the above resources, we recommend that you review all permissions * associated with the application before deploying. If you don't specify this parameter for an application that * requires capabilities, the call will fail. *

* * @param requiredCapabilities * A list of values that you must specify before you can deploy certain applications. Some applications might * include resources that can affect permissions in your AWS account, for example, by creating new AWS * Identity and Access Management (IAM) users. For those applications, you must explicitly acknowledge their * capabilities by specifying this parameter.

*

* The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY, and * CAPABILITY_AUTO_EXPAND. *

*

* The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or * CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. *

*

* The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::Lambda::Permission, AWS::IAM:Policy, AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS::TopicPolicy. *

*

* Applications that contain one or more nested applications require you to specify CAPABILITY_AUTO_EXPAND. *

*

* If your application template contains any of the above resources, we recommend that you review all * permissions associated with the application before deploying. If you don't specify this parameter for an * application that requires capabilities, the call will fail. * @return Returns a reference to this object so that method calls can be chained together. * @see Capability */ public Version withRequiredCapabilities(Capability... requiredCapabilities) { java.util.ArrayList requiredCapabilitiesCopy = new java.util.ArrayList(requiredCapabilities.length); for (Capability value : requiredCapabilities) { requiredCapabilitiesCopy.add(value.toString()); } if (getRequiredCapabilities() == null) { setRequiredCapabilities(requiredCapabilitiesCopy); } else { getRequiredCapabilities().addAll(requiredCapabilitiesCopy); } return this; } /** *

* Whether all of the AWS resources contained in this application are supported in the region in which it is being * retrieved. *

* * @param resourcesSupported * Whether all of the AWS resources contained in this application are supported in the region in which it is * being retrieved. */ public void setResourcesSupported(Boolean resourcesSupported) { this.resourcesSupported = resourcesSupported; } /** *

* Whether all of the AWS resources contained in this application are supported in the region in which it is being * retrieved. *

* * @return Whether all of the AWS resources contained in this application are supported in the region in which it is * being retrieved. */ public Boolean getResourcesSupported() { return this.resourcesSupported; } /** *

* Whether all of the AWS resources contained in this application are supported in the region in which it is being * retrieved. *

* * @param resourcesSupported * Whether all of the AWS resources contained in this application are supported in the region in which it is * being retrieved. * @return Returns a reference to this object so that method calls can be chained together. */ public Version withResourcesSupported(Boolean resourcesSupported) { setResourcesSupported(resourcesSupported); return this; } /** *

* Whether all of the AWS resources contained in this application are supported in the region in which it is being * retrieved. *

* * @return Whether all of the AWS resources contained in this application are supported in the region in which it is * being retrieved. */ public Boolean isResourcesSupported() { return this.resourcesSupported; } /** *

* The semantic version of the application: *

*

* https://semver.org/ *

* * @param semanticVersion * The semantic version of the application:

*

* https://semver.org/ */ public void setSemanticVersion(String semanticVersion) { this.semanticVersion = semanticVersion; } /** *

* The semantic version of the application: *

*

* https://semver.org/ *

* * @return The semantic version of the application:

*

* https://semver.org/ */ public String getSemanticVersion() { return this.semanticVersion; } /** *

* The semantic version of the application: *

*

* https://semver.org/ *

* * @param semanticVersion * The semantic version of the application:

*

* https://semver.org/ * @return Returns a reference to this object so that method calls can be chained together. */ public Version withSemanticVersion(String semanticVersion) { setSemanticVersion(semanticVersion); return this; } /** *

* A link to the S3 object that contains the ZIP archive of the source code for this version of your application. *

*

* Maximum size 50 MB *

* * @param sourceCodeArchiveUrl * A link to the S3 object that contains the ZIP archive of the source code for this version of your * application.

*

* Maximum size 50 MB */ public void setSourceCodeArchiveUrl(String sourceCodeArchiveUrl) { this.sourceCodeArchiveUrl = sourceCodeArchiveUrl; } /** *

* A link to the S3 object that contains the ZIP archive of the source code for this version of your application. *

*

* Maximum size 50 MB *

* * @return A link to the S3 object that contains the ZIP archive of the source code for this version of your * application.

*

* Maximum size 50 MB */ public String getSourceCodeArchiveUrl() { return this.sourceCodeArchiveUrl; } /** *

* A link to the S3 object that contains the ZIP archive of the source code for this version of your application. *

*

* Maximum size 50 MB *

* * @param sourceCodeArchiveUrl * A link to the S3 object that contains the ZIP archive of the source code for this version of your * application.

*

* Maximum size 50 MB * @return Returns a reference to this object so that method calls can be chained together. */ public Version withSourceCodeArchiveUrl(String sourceCodeArchiveUrl) { setSourceCodeArchiveUrl(sourceCodeArchiveUrl); return this; } /** *

* A link to a public repository for the source code of your application, for example the URL of a specific GitHub * commit. *

* * @param sourceCodeUrl * A link to a public repository for the source code of your application, for example the URL of a specific * GitHub commit. */ public void setSourceCodeUrl(String sourceCodeUrl) { this.sourceCodeUrl = sourceCodeUrl; } /** *

* A link to a public repository for the source code of your application, for example the URL of a specific GitHub * commit. *

* * @return A link to a public repository for the source code of your application, for example the URL of a specific * GitHub commit. */ public String getSourceCodeUrl() { return this.sourceCodeUrl; } /** *

* A link to a public repository for the source code of your application, for example the URL of a specific GitHub * commit. *

* * @param sourceCodeUrl * A link to a public repository for the source code of your application, for example the URL of a specific * GitHub commit. * @return Returns a reference to this object so that method calls can be chained together. */ public Version withSourceCodeUrl(String sourceCodeUrl) { setSourceCodeUrl(sourceCodeUrl); return this; } /** *

* A link to the packaged AWS SAM template of your application. *

* * @param templateUrl * A link to the packaged AWS SAM template of your application. */ public void setTemplateUrl(String templateUrl) { this.templateUrl = templateUrl; } /** *

* A link to the packaged AWS SAM template of your application. *

* * @return A link to the packaged AWS SAM template of your application. */ public String getTemplateUrl() { return this.templateUrl; } /** *

* A link to the packaged AWS SAM template of your application. *

* * @param templateUrl * A link to the packaged AWS SAM template of your application. * @return Returns a reference to this object so that method calls can be chained together. */ public Version withTemplateUrl(String templateUrl) { setTemplateUrl(templateUrl); 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 (getApplicationId() != null) sb.append("ApplicationId: ").append(getApplicationId()).append(","); if (getCreationTime() != null) sb.append("CreationTime: ").append(getCreationTime()).append(","); if (getParameterDefinitions() != null) sb.append("ParameterDefinitions: ").append(getParameterDefinitions()).append(","); if (getRequiredCapabilities() != null) sb.append("RequiredCapabilities: ").append(getRequiredCapabilities()).append(","); if (getResourcesSupported() != null) sb.append("ResourcesSupported: ").append(getResourcesSupported()).append(","); if (getSemanticVersion() != null) sb.append("SemanticVersion: ").append(getSemanticVersion()).append(","); if (getSourceCodeArchiveUrl() != null) sb.append("SourceCodeArchiveUrl: ").append(getSourceCodeArchiveUrl()).append(","); if (getSourceCodeUrl() != null) sb.append("SourceCodeUrl: ").append(getSourceCodeUrl()).append(","); if (getTemplateUrl() != null) sb.append("TemplateUrl: ").append(getTemplateUrl()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof Version == false) return false; Version other = (Version) obj; if (other.getApplicationId() == null ^ this.getApplicationId() == null) return false; if (other.getApplicationId() != null && other.getApplicationId().equals(this.getApplicationId()) == false) return false; if (other.getCreationTime() == null ^ this.getCreationTime() == null) return false; if (other.getCreationTime() != null && other.getCreationTime().equals(this.getCreationTime()) == false) return false; if (other.getParameterDefinitions() == null ^ this.getParameterDefinitions() == null) return false; if (other.getParameterDefinitions() != null && other.getParameterDefinitions().equals(this.getParameterDefinitions()) == false) return false; if (other.getRequiredCapabilities() == null ^ this.getRequiredCapabilities() == null) return false; if (other.getRequiredCapabilities() != null && other.getRequiredCapabilities().equals(this.getRequiredCapabilities()) == false) return false; if (other.getResourcesSupported() == null ^ this.getResourcesSupported() == null) return false; if (other.getResourcesSupported() != null && other.getResourcesSupported().equals(this.getResourcesSupported()) == false) return false; if (other.getSemanticVersion() == null ^ this.getSemanticVersion() == null) return false; if (other.getSemanticVersion() != null && other.getSemanticVersion().equals(this.getSemanticVersion()) == false) return false; if (other.getSourceCodeArchiveUrl() == null ^ this.getSourceCodeArchiveUrl() == null) return false; if (other.getSourceCodeArchiveUrl() != null && other.getSourceCodeArchiveUrl().equals(this.getSourceCodeArchiveUrl()) == false) return false; if (other.getSourceCodeUrl() == null ^ this.getSourceCodeUrl() == null) return false; if (other.getSourceCodeUrl() != null && other.getSourceCodeUrl().equals(this.getSourceCodeUrl()) == false) return false; if (other.getTemplateUrl() == null ^ this.getTemplateUrl() == null) return false; if (other.getTemplateUrl() != null && other.getTemplateUrl().equals(this.getTemplateUrl()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getApplicationId() == null) ? 0 : getApplicationId().hashCode()); hashCode = prime * hashCode + ((getCreationTime() == null) ? 0 : getCreationTime().hashCode()); hashCode = prime * hashCode + ((getParameterDefinitions() == null) ? 0 : getParameterDefinitions().hashCode()); hashCode = prime * hashCode + ((getRequiredCapabilities() == null) ? 0 : getRequiredCapabilities().hashCode()); hashCode = prime * hashCode + ((getResourcesSupported() == null) ? 0 : getResourcesSupported().hashCode()); hashCode = prime * hashCode + ((getSemanticVersion() == null) ? 0 : getSemanticVersion().hashCode()); hashCode = prime * hashCode + ((getSourceCodeArchiveUrl() == null) ? 0 : getSourceCodeArchiveUrl().hashCode()); hashCode = prime * hashCode + ((getSourceCodeUrl() == null) ? 0 : getSourceCodeUrl().hashCode()); hashCode = prime * hashCode + ((getTemplateUrl() == null) ? 0 : getTemplateUrl().hashCode()); return hashCode; } @Override public Version clone() { try { return (Version) 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.serverlessapplicationrepository.model.transform.VersionMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy