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

com.amazonaws.services.opsworks.model.App Maven / Gradle / Ivy

Go to download

The AWS SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
Show newest version
/*
 * Copyright 2011-2016 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.opsworks.model;

import java.io.Serializable;

/**
 * 

* A description of the app. *

*/ public class App implements Serializable, Cloneable { /** *

* The app ID. *

*/ private String appId; /** *

* The app stack ID. *

*/ private String stackId; /** *

* The app's short name. *

*/ private String shortname; /** *

* The app name. *

*/ private String name; /** *

* A description of the app. *

*/ private String description; /** *

* The app's data sources. *

*/ private com.amazonaws.internal.SdkInternalList dataSources; /** *

* The app type. *

*/ private String type; /** *

* A Source object that describes the app repository. *

*/ private Source appSource; /** *

* The app vhost settings with multiple domains separated by commas. For * example: 'www.example.com, example.com' *

*/ private com.amazonaws.internal.SdkInternalList domains; /** *

* Whether to enable SSL for the app. *

*/ private Boolean enableSsl; /** *

* An SslConfiguration object with the SSL configuration. *

*/ private SslConfiguration sslConfiguration; /** *

* The stack attributes. *

*/ private com.amazonaws.internal.SdkInternalMap attributes; /** *

* When the app was created. *

*/ private String createdAt; /** *

* An array of EnvironmentVariable objects that specify * environment variables to be associated with the app. After you deploy the * app, these variables are defined on the associated app server instances. * For more information, see Environment Variables. *

* *

* There is no specific limit on the number of environment variables. * However, the size of the associated data structure - which includes the * variable names, values, and protected flag values - cannot exceed 10 KB * (10240 Bytes). This limit should accommodate most if not all use cases, * but if you do exceed it, you will cause an exception (API) with an * "Environment: is too large (maximum is 10KB)" message. *

*
*/ private com.amazonaws.internal.SdkInternalList environment; /** *

* The app ID. *

* * @param appId * The app ID. */ public void setAppId(String appId) { this.appId = appId; } /** *

* The app ID. *

* * @return The app ID. */ public String getAppId() { return this.appId; } /** *

* The app ID. *

* * @param appId * The app ID. * @return Returns a reference to this object so that method calls can be * chained together. */ public App withAppId(String appId) { setAppId(appId); return this; } /** *

* The app stack ID. *

* * @param stackId * The app stack ID. */ public void setStackId(String stackId) { this.stackId = stackId; } /** *

* The app stack ID. *

* * @return The app stack ID. */ public String getStackId() { return this.stackId; } /** *

* The app stack ID. *

* * @param stackId * The app stack ID. * @return Returns a reference to this object so that method calls can be * chained together. */ public App withStackId(String stackId) { setStackId(stackId); return this; } /** *

* The app's short name. *

* * @param shortname * The app's short name. */ public void setShortname(String shortname) { this.shortname = shortname; } /** *

* The app's short name. *

* * @return The app's short name. */ public String getShortname() { return this.shortname; } /** *

* The app's short name. *

* * @param shortname * The app's short name. * @return Returns a reference to this object so that method calls can be * chained together. */ public App withShortname(String shortname) { setShortname(shortname); return this; } /** *

* The app name. *

* * @param name * The app name. */ public void setName(String name) { this.name = name; } /** *

* The app name. *

* * @return The app name. */ public String getName() { return this.name; } /** *

* The app name. *

* * @param name * The app name. * @return Returns a reference to this object so that method calls can be * chained together. */ public App withName(String name) { setName(name); return this; } /** *

* A description of the app. *

* * @param description * A description of the app. */ public void setDescription(String description) { this.description = description; } /** *

* A description of the app. *

* * @return A description of the app. */ public String getDescription() { return this.description; } /** *

* A description of the app. *

* * @param description * A description of the app. * @return Returns a reference to this object so that method calls can be * chained together. */ public App withDescription(String description) { setDescription(description); return this; } /** *

* The app's data sources. *

* * @return The app's data sources. */ public java.util.List getDataSources() { if (dataSources == null) { dataSources = new com.amazonaws.internal.SdkInternalList(); } return dataSources; } /** *

* The app's data sources. *

* * @param dataSources * The app's data sources. */ public void setDataSources(java.util.Collection dataSources) { if (dataSources == null) { this.dataSources = null; return; } this.dataSources = new com.amazonaws.internal.SdkInternalList( dataSources); } /** *

* The app's data sources. *

*

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

* * @param dataSources * The app's data sources. * @return Returns a reference to this object so that method calls can be * chained together. */ public App withDataSources(DataSource... dataSources) { if (this.dataSources == null) { setDataSources(new com.amazonaws.internal.SdkInternalList( dataSources.length)); } for (DataSource ele : dataSources) { this.dataSources.add(ele); } return this; } /** *

* The app's data sources. *

* * @param dataSources * The app's data sources. * @return Returns a reference to this object so that method calls can be * chained together. */ public App withDataSources(java.util.Collection dataSources) { setDataSources(dataSources); return this; } /** *

* The app type. *

* * @param type * The app type. * @see AppType */ public void setType(String type) { this.type = type; } /** *

* The app type. *

* * @return The app type. * @see AppType */ public String getType() { return this.type; } /** *

* The app type. *

* * @param type * The app type. * @return Returns a reference to this object so that method calls can be * chained together. * @see AppType */ public App withType(String type) { setType(type); return this; } /** *

* The app type. *

* * @param type * The app type. * @see AppType */ public void setType(AppType type) { this.type = type.toString(); } /** *

* The app type. *

* * @param type * The app type. * @return Returns a reference to this object so that method calls can be * chained together. * @see AppType */ public App withType(AppType type) { setType(type); return this; } /** *

* A Source object that describes the app repository. *

* * @param appSource * A Source object that describes the app repository. */ public void setAppSource(Source appSource) { this.appSource = appSource; } /** *

* A Source object that describes the app repository. *

* * @return A Source object that describes the app repository. */ public Source getAppSource() { return this.appSource; } /** *

* A Source object that describes the app repository. *

* * @param appSource * A Source object that describes the app repository. * @return Returns a reference to this object so that method calls can be * chained together. */ public App withAppSource(Source appSource) { setAppSource(appSource); return this; } /** *

* The app vhost settings with multiple domains separated by commas. For * example: 'www.example.com, example.com' *

* * @return The app vhost settings with multiple domains separated by commas. * For example: 'www.example.com, example.com' */ public java.util.List getDomains() { if (domains == null) { domains = new com.amazonaws.internal.SdkInternalList(); } return domains; } /** *

* The app vhost settings with multiple domains separated by commas. For * example: 'www.example.com, example.com' *

* * @param domains * The app vhost settings with multiple domains separated by commas. * For example: 'www.example.com, example.com' */ public void setDomains(java.util.Collection domains) { if (domains == null) { this.domains = null; return; } this.domains = new com.amazonaws.internal.SdkInternalList( domains); } /** *

* The app vhost settings with multiple domains separated by commas. For * example: 'www.example.com, example.com' *

*

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

* * @param domains * The app vhost settings with multiple domains separated by commas. * For example: 'www.example.com, example.com' * @return Returns a reference to this object so that method calls can be * chained together. */ public App withDomains(String... domains) { if (this.domains == null) { setDomains(new com.amazonaws.internal.SdkInternalList( domains.length)); } for (String ele : domains) { this.domains.add(ele); } return this; } /** *

* The app vhost settings with multiple domains separated by commas. For * example: 'www.example.com, example.com' *

* * @param domains * The app vhost settings with multiple domains separated by commas. * For example: 'www.example.com, example.com' * @return Returns a reference to this object so that method calls can be * chained together. */ public App withDomains(java.util.Collection domains) { setDomains(domains); return this; } /** *

* Whether to enable SSL for the app. *

* * @param enableSsl * Whether to enable SSL for the app. */ public void setEnableSsl(Boolean enableSsl) { this.enableSsl = enableSsl; } /** *

* Whether to enable SSL for the app. *

* * @return Whether to enable SSL for the app. */ public Boolean getEnableSsl() { return this.enableSsl; } /** *

* Whether to enable SSL for the app. *

* * @param enableSsl * Whether to enable SSL for the app. * @return Returns a reference to this object so that method calls can be * chained together. */ public App withEnableSsl(Boolean enableSsl) { setEnableSsl(enableSsl); return this; } /** *

* Whether to enable SSL for the app. *

* * @return Whether to enable SSL for the app. */ public Boolean isEnableSsl() { return this.enableSsl; } /** *

* An SslConfiguration object with the SSL configuration. *

* * @param sslConfiguration * An SslConfiguration object with the SSL * configuration. */ public void setSslConfiguration(SslConfiguration sslConfiguration) { this.sslConfiguration = sslConfiguration; } /** *

* An SslConfiguration object with the SSL configuration. *

* * @return An SslConfiguration object with the SSL * configuration. */ public SslConfiguration getSslConfiguration() { return this.sslConfiguration; } /** *

* An SslConfiguration object with the SSL configuration. *

* * @param sslConfiguration * An SslConfiguration object with the SSL * configuration. * @return Returns a reference to this object so that method calls can be * chained together. */ public App withSslConfiguration(SslConfiguration sslConfiguration) { setSslConfiguration(sslConfiguration); return this; } /** *

* The stack attributes. *

* * @return The stack attributes. */ public java.util.Map getAttributes() { if (attributes == null) { attributes = new com.amazonaws.internal.SdkInternalMap(); } return attributes; } /** *

* The stack attributes. *

* * @param attributes * The stack attributes. */ public void setAttributes(java.util.Map attributes) { this.attributes = attributes == null ? null : new com.amazonaws.internal.SdkInternalMap( attributes); } /** *

* The stack attributes. *

* * @param attributes * The stack attributes. * @return Returns a reference to this object so that method calls can be * chained together. */ public App withAttributes(java.util.Map attributes) { setAttributes(attributes); return this; } public App addAttributesEntry(String key, String value) { if (null == this.attributes) { this.attributes = new com.amazonaws.internal.SdkInternalMap(); } if (this.attributes.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.attributes.put(key, value); return this; } /** * Removes all the entries added into Attributes. <p> Returns a reference * to this object so that method calls can be chained together. */ public App clearAttributesEntries() { this.attributes = null; return this; } /** *

* When the app was created. *

* * @param createdAt * When the app was created. */ public void setCreatedAt(String createdAt) { this.createdAt = createdAt; } /** *

* When the app was created. *

* * @return When the app was created. */ public String getCreatedAt() { return this.createdAt; } /** *

* When the app was created. *

* * @param createdAt * When the app was created. * @return Returns a reference to this object so that method calls can be * chained together. */ public App withCreatedAt(String createdAt) { setCreatedAt(createdAt); return this; } /** *

* An array of EnvironmentVariable objects that specify * environment variables to be associated with the app. After you deploy the * app, these variables are defined on the associated app server instances. * For more information, see Environment Variables. *

* *

* There is no specific limit on the number of environment variables. * However, the size of the associated data structure - which includes the * variable names, values, and protected flag values - cannot exceed 10 KB * (10240 Bytes). This limit should accommodate most if not all use cases, * but if you do exceed it, you will cause an exception (API) with an * "Environment: is too large (maximum is 10KB)" message. *

*
* * @return An array of EnvironmentVariable objects that specify * environment variables to be associated with the app. After you * deploy the app, these variables are defined on the associated app * server instances. For more information, see Environment Variables.

*

* There is no specific limit on the number of environment * variables. However, the size of the associated data structure - * which includes the variable names, values, and protected flag * values - cannot exceed 10 KB (10240 Bytes). This limit should * accommodate most if not all use cases, but if you do exceed it, * you will cause an exception (API) with an * "Environment: is too large (maximum is 10KB)" message. *

*/ public java.util.List getEnvironment() { if (environment == null) { environment = new com.amazonaws.internal.SdkInternalList(); } return environment; } /** *

* An array of EnvironmentVariable objects that specify * environment variables to be associated with the app. After you deploy the * app, these variables are defined on the associated app server instances. * For more information, see Environment Variables. *

* *

* There is no specific limit on the number of environment variables. * However, the size of the associated data structure - which includes the * variable names, values, and protected flag values - cannot exceed 10 KB * (10240 Bytes). This limit should accommodate most if not all use cases, * but if you do exceed it, you will cause an exception (API) with an * "Environment: is too large (maximum is 10KB)" message. *

*
* * @param environment * An array of EnvironmentVariable objects that specify * environment variables to be associated with the app. After you * deploy the app, these variables are defined on the associated app * server instances. For more information, see Environment Variables.

*

* There is no specific limit on the number of environment variables. * However, the size of the associated data structure - which * includes the variable names, values, and protected flag values - * cannot exceed 10 KB (10240 Bytes). This limit should accommodate * most if not all use cases, but if you do exceed it, you will cause * an exception (API) with an * "Environment: is too large (maximum is 10KB)" message. *

*/ public void setEnvironment( java.util.Collection environment) { if (environment == null) { this.environment = null; return; } this.environment = new com.amazonaws.internal.SdkInternalList( environment); } /** *

* An array of EnvironmentVariable objects that specify * environment variables to be associated with the app. After you deploy the * app, these variables are defined on the associated app server instances. * For more information, see Environment Variables. *

* *

* There is no specific limit on the number of environment variables. * However, the size of the associated data structure - which includes the * variable names, values, and protected flag values - cannot exceed 10 KB * (10240 Bytes). This limit should accommodate most if not all use cases, * but if you do exceed it, you will cause an exception (API) with an * "Environment: is too large (maximum is 10KB)" message. *

*
*

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

* * @param environment * An array of EnvironmentVariable objects that specify * environment variables to be associated with the app. After you * deploy the app, these variables are defined on the associated app * server instances. For more information, see Environment Variables.

*

* There is no specific limit on the number of environment variables. * However, the size of the associated data structure - which * includes the variable names, values, and protected flag values - * cannot exceed 10 KB (10240 Bytes). This limit should accommodate * most if not all use cases, but if you do exceed it, you will cause * an exception (API) with an * "Environment: is too large (maximum is 10KB)" message. *

* @return Returns a reference to this object so that method calls can be * chained together. */ public App withEnvironment(EnvironmentVariable... environment) { if (this.environment == null) { setEnvironment(new com.amazonaws.internal.SdkInternalList( environment.length)); } for (EnvironmentVariable ele : environment) { this.environment.add(ele); } return this; } /** *

* An array of EnvironmentVariable objects that specify * environment variables to be associated with the app. After you deploy the * app, these variables are defined on the associated app server instances. * For more information, see Environment Variables. *

* *

* There is no specific limit on the number of environment variables. * However, the size of the associated data structure - which includes the * variable names, values, and protected flag values - cannot exceed 10 KB * (10240 Bytes). This limit should accommodate most if not all use cases, * but if you do exceed it, you will cause an exception (API) with an * "Environment: is too large (maximum is 10KB)" message. *

*
* * @param environment * An array of EnvironmentVariable objects that specify * environment variables to be associated with the app. After you * deploy the app, these variables are defined on the associated app * server instances. For more information, see Environment Variables.

*

* There is no specific limit on the number of environment variables. * However, the size of the associated data structure - which * includes the variable names, values, and protected flag values - * cannot exceed 10 KB (10240 Bytes). This limit should accommodate * most if not all use cases, but if you do exceed it, you will cause * an exception (API) with an * "Environment: is too large (maximum is 10KB)" message. *

* @return Returns a reference to this object so that method calls can be * chained together. */ public App withEnvironment( java.util.Collection environment) { setEnvironment(environment); return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getAppId() != null) sb.append("AppId: " + getAppId() + ","); if (getStackId() != null) sb.append("StackId: " + getStackId() + ","); if (getShortname() != null) sb.append("Shortname: " + getShortname() + ","); if (getName() != null) sb.append("Name: " + getName() + ","); if (getDescription() != null) sb.append("Description: " + getDescription() + ","); if (getDataSources() != null) sb.append("DataSources: " + getDataSources() + ","); if (getType() != null) sb.append("Type: " + getType() + ","); if (getAppSource() != null) sb.append("AppSource: " + getAppSource() + ","); if (getDomains() != null) sb.append("Domains: " + getDomains() + ","); if (getEnableSsl() != null) sb.append("EnableSsl: " + getEnableSsl() + ","); if (getSslConfiguration() != null) sb.append("SslConfiguration: " + getSslConfiguration() + ","); if (getAttributes() != null) sb.append("Attributes: " + getAttributes() + ","); if (getCreatedAt() != null) sb.append("CreatedAt: " + getCreatedAt() + ","); if (getEnvironment() != null) sb.append("Environment: " + getEnvironment()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof App == false) return false; App other = (App) obj; if (other.getAppId() == null ^ this.getAppId() == null) return false; if (other.getAppId() != null && other.getAppId().equals(this.getAppId()) == false) return false; if (other.getStackId() == null ^ this.getStackId() == null) return false; if (other.getStackId() != null && other.getStackId().equals(this.getStackId()) == false) return false; if (other.getShortname() == null ^ this.getShortname() == null) return false; if (other.getShortname() != null && other.getShortname().equals(this.getShortname()) == false) return false; if (other.getName() == null ^ this.getName() == null) return false; if (other.getName() != null && other.getName().equals(this.getName()) == false) return false; if (other.getDescription() == null ^ this.getDescription() == null) return false; if (other.getDescription() != null && other.getDescription().equals(this.getDescription()) == false) return false; if (other.getDataSources() == null ^ this.getDataSources() == null) return false; if (other.getDataSources() != null && other.getDataSources().equals(this.getDataSources()) == false) return false; if (other.getType() == null ^ this.getType() == null) return false; if (other.getType() != null && other.getType().equals(this.getType()) == false) return false; if (other.getAppSource() == null ^ this.getAppSource() == null) return false; if (other.getAppSource() != null && other.getAppSource().equals(this.getAppSource()) == false) return false; if (other.getDomains() == null ^ this.getDomains() == null) return false; if (other.getDomains() != null && other.getDomains().equals(this.getDomains()) == false) return false; if (other.getEnableSsl() == null ^ this.getEnableSsl() == null) return false; if (other.getEnableSsl() != null && other.getEnableSsl().equals(this.getEnableSsl()) == false) return false; if (other.getSslConfiguration() == null ^ this.getSslConfiguration() == null) return false; if (other.getSslConfiguration() != null && other.getSslConfiguration().equals( this.getSslConfiguration()) == false) return false; if (other.getAttributes() == null ^ this.getAttributes() == null) return false; if (other.getAttributes() != null && other.getAttributes().equals(this.getAttributes()) == false) return false; if (other.getCreatedAt() == null ^ this.getCreatedAt() == null) return false; if (other.getCreatedAt() != null && other.getCreatedAt().equals(this.getCreatedAt()) == false) return false; if (other.getEnvironment() == null ^ this.getEnvironment() == null) return false; if (other.getEnvironment() != null && other.getEnvironment().equals(this.getEnvironment()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getAppId() == null) ? 0 : getAppId().hashCode()); hashCode = prime * hashCode + ((getStackId() == null) ? 0 : getStackId().hashCode()); hashCode = prime * hashCode + ((getShortname() == null) ? 0 : getShortname().hashCode()); hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode()); hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode()); hashCode = prime * hashCode + ((getDataSources() == null) ? 0 : getDataSources().hashCode()); hashCode = prime * hashCode + ((getType() == null) ? 0 : getType().hashCode()); hashCode = prime * hashCode + ((getAppSource() == null) ? 0 : getAppSource().hashCode()); hashCode = prime * hashCode + ((getDomains() == null) ? 0 : getDomains().hashCode()); hashCode = prime * hashCode + ((getEnableSsl() == null) ? 0 : getEnableSsl().hashCode()); hashCode = prime * hashCode + ((getSslConfiguration() == null) ? 0 : getSslConfiguration() .hashCode()); hashCode = prime * hashCode + ((getAttributes() == null) ? 0 : getAttributes().hashCode()); hashCode = prime * hashCode + ((getCreatedAt() == null) ? 0 : getCreatedAt().hashCode()); hashCode = prime * hashCode + ((getEnvironment() == null) ? 0 : getEnvironment().hashCode()); return hashCode; } @Override public App clone() { try { return (App) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException( "Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy