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

com.amazonaws.services.amplifyuibuilder.model.CreateThemeData Maven / Gradle / Ivy

Go to download

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

There is a newer version: 1.12.772
Show 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.amplifyuibuilder.model;

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

/**
 * 

* Represents all of the information that is required to create a theme. *

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

* The name of the theme. *

*/ private String name; /** *

* A list of key-value pairs that defines the properties of the theme. *

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

* Describes the properties that can be overriden to customize an instance of the theme. *

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

* One or more key-value pairs to use when tagging the theme data. *

*/ private java.util.Map tags; /** *

* The name of the theme. *

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

* The name of the theme. *

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

* The name of the theme. *

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

* A list of key-value pairs that defines the properties of the theme. *

* * @return A list of key-value pairs that defines the properties of the theme. */ public java.util.List getValues() { return values; } /** *

* A list of key-value pairs that defines the properties of the theme. *

* * @param values * A list of key-value pairs that defines the properties of the theme. */ public void setValues(java.util.Collection values) { if (values == null) { this.values = null; return; } this.values = new java.util.ArrayList(values); } /** *

* A list of key-value pairs that defines the properties of the theme. *

*

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

* * @param values * A list of key-value pairs that defines the properties of the theme. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateThemeData withValues(ThemeValues... values) { if (this.values == null) { setValues(new java.util.ArrayList(values.length)); } for (ThemeValues ele : values) { this.values.add(ele); } return this; } /** *

* A list of key-value pairs that defines the properties of the theme. *

* * @param values * A list of key-value pairs that defines the properties of the theme. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateThemeData withValues(java.util.Collection values) { setValues(values); return this; } /** *

* Describes the properties that can be overriden to customize an instance of the theme. *

* * @return Describes the properties that can be overriden to customize an instance of the theme. */ public java.util.List getOverrides() { return overrides; } /** *

* Describes the properties that can be overriden to customize an instance of the theme. *

* * @param overrides * Describes the properties that can be overriden to customize an instance of the theme. */ public void setOverrides(java.util.Collection overrides) { if (overrides == null) { this.overrides = null; return; } this.overrides = new java.util.ArrayList(overrides); } /** *

* Describes the properties that can be overriden to customize an instance of the theme. *

*

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

* * @param overrides * Describes the properties that can be overriden to customize an instance of the theme. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateThemeData withOverrides(ThemeValues... overrides) { if (this.overrides == null) { setOverrides(new java.util.ArrayList(overrides.length)); } for (ThemeValues ele : overrides) { this.overrides.add(ele); } return this; } /** *

* Describes the properties that can be overriden to customize an instance of the theme. *

* * @param overrides * Describes the properties that can be overriden to customize an instance of the theme. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateThemeData withOverrides(java.util.Collection overrides) { setOverrides(overrides); return this; } /** *

* One or more key-value pairs to use when tagging the theme data. *

* * @return One or more key-value pairs to use when tagging the theme data. */ public java.util.Map getTags() { return tags; } /** *

* One or more key-value pairs to use when tagging the theme data. *

* * @param tags * One or more key-value pairs to use when tagging the theme data. */ public void setTags(java.util.Map tags) { this.tags = tags; } /** *

* One or more key-value pairs to use when tagging the theme data. *

* * @param tags * One or more key-value pairs to use when tagging the theme data. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateThemeData withTags(java.util.Map tags) { setTags(tags); return this; } /** * Add a single Tags entry * * @see CreateThemeData#withTags * @returns a reference to this object so that method calls can be chained together. */ public CreateThemeData addTagsEntry(String key, String value) { if (null == this.tags) { this.tags = new java.util.HashMap(); } if (this.tags.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.tags.put(key, value); return this; } /** * Removes all the entries added into Tags. * * @return Returns a reference to this object so that method calls can be chained together. */ public CreateThemeData clearTagsEntries() { this.tags = null; 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 (getName() != null) sb.append("Name: ").append(getName()).append(","); if (getValues() != null) sb.append("Values: ").append(getValues()).append(","); if (getOverrides() != null) sb.append("Overrides: ").append(getOverrides()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateThemeData == false) return false; CreateThemeData other = (CreateThemeData) obj; if (other.getName() == null ^ this.getName() == null) return false; if (other.getName() != null && other.getName().equals(this.getName()) == false) return false; if (other.getValues() == null ^ this.getValues() == null) return false; if (other.getValues() != null && other.getValues().equals(this.getValues()) == false) return false; if (other.getOverrides() == null ^ this.getOverrides() == null) return false; if (other.getOverrides() != null && other.getOverrides().equals(this.getOverrides()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == 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 + ((getValues() == null) ? 0 : getValues().hashCode()); hashCode = prime * hashCode + ((getOverrides() == null) ? 0 : getOverrides().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); return hashCode; } @Override public CreateThemeData clone() { try { return (CreateThemeData) 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.amplifyuibuilder.model.transform.CreateThemeDataMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy