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

com.amazonaws.services.greengrassv2.model.ComponentPlatform Maven / Gradle / Ivy

Go to download

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

There is a newer version: 1.12.778
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.greengrassv2.model;

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

/**
 * 

* Contains information about a platform that a component supports. *

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

* The friendly name of the platform. This name helps you identify the platform. *

*

* If you omit this parameter, IoT Greengrass creates a friendly name from the os and * architecture of the platform. *

*/ private String name; /** *

* A dictionary of attributes for the platform. The IoT Greengrass Core software defines the os and * architecture by default. You can specify additional platform attributes for a core device when you * deploy the Greengrass nucleus component. For more information, see the Greengrass * nucleus component in the IoT Greengrass V2 Developer Guide. *

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

* The friendly name of the platform. This name helps you identify the platform. *

*

* If you omit this parameter, IoT Greengrass creates a friendly name from the os and * architecture of the platform. *

* * @param name * The friendly name of the platform. This name helps you identify the platform.

*

* If you omit this parameter, IoT Greengrass creates a friendly name from the os and * architecture of the platform. */ public void setName(String name) { this.name = name; } /** *

* The friendly name of the platform. This name helps you identify the platform. *

*

* If you omit this parameter, IoT Greengrass creates a friendly name from the os and * architecture of the platform. *

* * @return The friendly name of the platform. This name helps you identify the platform.

*

* If you omit this parameter, IoT Greengrass creates a friendly name from the os and * architecture of the platform. */ public String getName() { return this.name; } /** *

* The friendly name of the platform. This name helps you identify the platform. *

*

* If you omit this parameter, IoT Greengrass creates a friendly name from the os and * architecture of the platform. *

* * @param name * The friendly name of the platform. This name helps you identify the platform.

*

* If you omit this parameter, IoT Greengrass creates a friendly name from the os and * architecture of the platform. * @return Returns a reference to this object so that method calls can be chained together. */ public ComponentPlatform withName(String name) { setName(name); return this; } /** *

* A dictionary of attributes for the platform. The IoT Greengrass Core software defines the os and * architecture by default. You can specify additional platform attributes for a core device when you * deploy the Greengrass nucleus component. For more information, see the Greengrass * nucleus component in the IoT Greengrass V2 Developer Guide. *

* * @return A dictionary of attributes for the platform. The IoT Greengrass Core software defines the os * and architecture by default. You can specify additional platform attributes for a core * device when you deploy the Greengrass nucleus component. For more information, see the Greengrass nucleus component in the IoT Greengrass V2 Developer Guide. */ public java.util.Map getAttributes() { return attributes; } /** *

* A dictionary of attributes for the platform. The IoT Greengrass Core software defines the os and * architecture by default. You can specify additional platform attributes for a core device when you * deploy the Greengrass nucleus component. For more information, see the Greengrass * nucleus component in the IoT Greengrass V2 Developer Guide. *

* * @param attributes * A dictionary of attributes for the platform. The IoT Greengrass Core software defines the os * and architecture by default. You can specify additional platform attributes for a core device * when you deploy the Greengrass nucleus component. For more information, see the Greengrass nucleus component in the IoT Greengrass V2 Developer Guide. */ public void setAttributes(java.util.Map attributes) { this.attributes = attributes; } /** *

* A dictionary of attributes for the platform. The IoT Greengrass Core software defines the os and * architecture by default. You can specify additional platform attributes for a core device when you * deploy the Greengrass nucleus component. For more information, see the Greengrass * nucleus component in the IoT Greengrass V2 Developer Guide. *

* * @param attributes * A dictionary of attributes for the platform. The IoT Greengrass Core software defines the os * and architecture by default. You can specify additional platform attributes for a core device * when you deploy the Greengrass nucleus component. For more information, see the Greengrass nucleus component in the IoT Greengrass V2 Developer Guide. * @return Returns a reference to this object so that method calls can be chained together. */ public ComponentPlatform withAttributes(java.util.Map attributes) { setAttributes(attributes); return this; } /** * Add a single Attributes entry * * @see ComponentPlatform#withAttributes * @returns a reference to this object so that method calls can be chained together. */ public ComponentPlatform addAttributesEntry(String key, String value) { if (null == this.attributes) { this.attributes = new java.util.HashMap(); } 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. * * @return Returns a reference to this object so that method calls can be chained together. */ public ComponentPlatform clearAttributesEntries() { this.attributes = 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 (getAttributes() != null) sb.append("Attributes: ").append(getAttributes()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof ComponentPlatform == false) return false; ComponentPlatform other = (ComponentPlatform) obj; if (other.getName() == null ^ this.getName() == null) return false; if (other.getName() != null && other.getName().equals(this.getName()) == false) return false; if (other.getAttributes() == null ^ this.getAttributes() == null) return false; if (other.getAttributes() != null && other.getAttributes().equals(this.getAttributes()) == 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 + ((getAttributes() == null) ? 0 : getAttributes().hashCode()); return hashCode; } @Override public ComponentPlatform clone() { try { return (ComponentPlatform) 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.greengrassv2.model.transform.ComponentPlatformMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy