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

com.amazonaws.services.elasticmapreduce.model.SupportedProductConfig 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 2010-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.elasticmapreduce.model;

import java.io.Serializable;

/**
 * 

* The list of supported product configurations which allow user-supplied * arguments. EMR accepts these arguments and forwards them to the corresponding * installation script as bootstrap action arguments. *

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

* The name of the product configuration. *

*/ private String name; /** *

* The list of user-supplied arguments. *

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

* The name of the product configuration. *

* * @param name * The name of the product configuration. */ public void setName(String name) { this.name = name; } /** *

* The name of the product configuration. *

* * @return The name of the product configuration. */ public String getName() { return this.name; } /** *

* The name of the product configuration. *

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

* The list of user-supplied arguments. *

* * @return The list of user-supplied arguments. */ public java.util.List getArgs() { if (args == null) { args = new com.amazonaws.internal.SdkInternalList(); } return args; } /** *

* The list of user-supplied arguments. *

* * @param args * The list of user-supplied arguments. */ public void setArgs(java.util.Collection args) { if (args == null) { this.args = null; return; } this.args = new com.amazonaws.internal.SdkInternalList(args); } /** *

* The list of user-supplied arguments. *

*

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

* * @param args * The list of user-supplied arguments. * @return Returns a reference to this object so that method calls can be * chained together. */ public SupportedProductConfig withArgs(String... args) { if (this.args == null) { setArgs(new com.amazonaws.internal.SdkInternalList( args.length)); } for (String ele : args) { this.args.add(ele); } return this; } /** *

* The list of user-supplied arguments. *

* * @param args * The list of user-supplied arguments. * @return Returns a reference to this object so that method calls can be * chained together. */ public SupportedProductConfig withArgs(java.util.Collection args) { setArgs(args); 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 (getName() != null) sb.append("Name: " + getName() + ","); if (getArgs() != null) sb.append("Args: " + getArgs()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof SupportedProductConfig == false) return false; SupportedProductConfig other = (SupportedProductConfig) obj; if (other.getName() == null ^ this.getName() == null) return false; if (other.getName() != null && other.getName().equals(this.getName()) == false) return false; if (other.getArgs() == null ^ this.getArgs() == null) return false; if (other.getArgs() != null && other.getArgs().equals(this.getArgs()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode()); hashCode = prime * hashCode + ((getArgs() == null) ? 0 : getArgs().hashCode()); return hashCode; } @Override public SupportedProductConfig clone() { try { return (SupportedProductConfig) 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