/* * Copyright 2018-2023 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.simplesystemsmanagement.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Describes a filter for a specific list of managed nodes. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class InstanceInformation implements Serializable, Cloneable, StructuredPojo { /** ** The managed node ID. *
*/ private String instanceId; /** ** Connection status of SSM Agent. *
*
* The status Inactive
has been deprecated and is no longer in use.
*
* The date and time when the agent last pinged the Systems Manager service. *
*/ private java.util.Date lastPingDateTime; /** ** The version of SSM Agent running on your Linux managed node. *
*/ private String agentVersion; /** ** Indicates whether the latest version of SSM Agent is running on your Linux managed node. This field doesn't * indicate whether or not the latest version is installed on Windows managed nodes, because some older versions of * Windows Server use the EC2Config service to process Systems Manager requests. *
*/ private Boolean isLatestVersion; /** ** The operating system platform type. *
*/ private String platformType; /** ** The name of the operating system platform running on your managed node. *
*/ private String platformName; /** ** The version of the OS platform running on your managed node. *
*/ private String platformVersion; /** ** The activation ID created by Amazon Web Services Systems Manager when the server or virtual machine (VM) was * registered. *
*/ private String activationId; /** *
* The Identity and Access Management (IAM) role assigned to the on-premises Systems Manager managed node. This call
* doesn't return the IAM role for Amazon Elastic Compute Cloud (Amazon EC2) instances. To retrieve the IAM role for
* an EC2 instance, use the Amazon EC2 DescribeInstances
operation. For information, see DescribeInstances in
* the Amazon EC2 API Reference or describe-instances in the
* Amazon Web Services CLI Command Reference.
*
* The date the server or VM was registered with Amazon Web Services as a managed node. *
*/ private java.util.Date registrationDate; /** ** The type of instance. Instances are either EC2 instances or managed instances. *
*/ private String resourceType; /** *
* The name assigned to an on-premises server, edge device, or virtual machine (VM) when it is activated as a
* Systems Manager managed node. The name is specified as the DefaultInstanceName
property using the
* CreateActivation command. It is applied to the managed node by specifying the Activation Code and
* Activation ID when you install SSM Agent on the node, as explained in Install SSM
* Agent for a hybrid environment (Linux) and Install SSM
* Agent for a hybrid environment (Windows). To retrieve the Name
tag of an EC2 instance, use the
* Amazon EC2 DescribeInstances
operation. For information, see DescribeInstances in
* the Amazon EC2 API Reference or describe-instances in the
* Amazon Web Services CLI Command Reference.
*
* The IP address of the managed node. *
*/ private String iPAddress; /** ** The fully qualified host name of the managed node. *
*/ private String computerName; /** ** The status of the association. *
*/ private String associationStatus; /** ** The date the association was last run. *
*/ private java.util.Date lastAssociationExecutionDate; /** ** The last date the association was successfully run. *
*/ private java.util.Date lastSuccessfulAssociationExecutionDate; /** ** Information about the association. *
*/ private InstanceAggregatedAssociationOverview associationOverview; /** *
* The ID of the source resource. For IoT Greengrass devices, SourceId
is the Thing name.
*
* The type of the source resource. For IoT Greengrass devices, SourceType
is
* AWS::IoT::Thing
.
*
* The managed node ID. *
* * @param instanceId * The managed node ID. */ public void setInstanceId(String instanceId) { this.instanceId = instanceId; } /** ** The managed node ID. *
* * @return The managed node ID. */ public String getInstanceId() { return this.instanceId; } /** ** The managed node ID. *
* * @param instanceId * The managed node ID. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withInstanceId(String instanceId) { setInstanceId(instanceId); return this; } /** ** Connection status of SSM Agent. *
*
* The status Inactive
has been deprecated and is no longer in use.
*
* The status Inactive
has been deprecated and is no longer in use.
*
* Connection status of SSM Agent. *
*
* The status Inactive
has been deprecated and is no longer in use.
*
* The status Inactive
has been deprecated and is no longer in use.
*
* Connection status of SSM Agent. *
*
* The status Inactive
has been deprecated and is no longer in use.
*
* The status Inactive
has been deprecated and is no longer in use.
*
* Connection status of SSM Agent. *
*
* The status Inactive
has been deprecated and is no longer in use.
*
* The status Inactive
has been deprecated and is no longer in use.
*
* Connection status of SSM Agent. *
*
* The status Inactive
has been deprecated and is no longer in use.
*
* The status Inactive
has been deprecated and is no longer in use.
*
* The date and time when the agent last pinged the Systems Manager service. *
* * @param lastPingDateTime * The date and time when the agent last pinged the Systems Manager service. */ public void setLastPingDateTime(java.util.Date lastPingDateTime) { this.lastPingDateTime = lastPingDateTime; } /** ** The date and time when the agent last pinged the Systems Manager service. *
* * @return The date and time when the agent last pinged the Systems Manager service. */ public java.util.Date getLastPingDateTime() { return this.lastPingDateTime; } /** ** The date and time when the agent last pinged the Systems Manager service. *
* * @param lastPingDateTime * The date and time when the agent last pinged the Systems Manager service. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withLastPingDateTime(java.util.Date lastPingDateTime) { setLastPingDateTime(lastPingDateTime); return this; } /** ** The version of SSM Agent running on your Linux managed node. *
* * @param agentVersion * The version of SSM Agent running on your Linux managed node. */ public void setAgentVersion(String agentVersion) { this.agentVersion = agentVersion; } /** ** The version of SSM Agent running on your Linux managed node. *
* * @return The version of SSM Agent running on your Linux managed node. */ public String getAgentVersion() { return this.agentVersion; } /** ** The version of SSM Agent running on your Linux managed node. *
* * @param agentVersion * The version of SSM Agent running on your Linux managed node. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withAgentVersion(String agentVersion) { setAgentVersion(agentVersion); return this; } /** ** Indicates whether the latest version of SSM Agent is running on your Linux managed node. This field doesn't * indicate whether or not the latest version is installed on Windows managed nodes, because some older versions of * Windows Server use the EC2Config service to process Systems Manager requests. *
* * @param isLatestVersion * Indicates whether the latest version of SSM Agent is running on your Linux managed node. This field * doesn't indicate whether or not the latest version is installed on Windows managed nodes, because some * older versions of Windows Server use the EC2Config service to process Systems Manager requests. */ public void setIsLatestVersion(Boolean isLatestVersion) { this.isLatestVersion = isLatestVersion; } /** ** Indicates whether the latest version of SSM Agent is running on your Linux managed node. This field doesn't * indicate whether or not the latest version is installed on Windows managed nodes, because some older versions of * Windows Server use the EC2Config service to process Systems Manager requests. *
* * @return Indicates whether the latest version of SSM Agent is running on your Linux managed node. This field * doesn't indicate whether or not the latest version is installed on Windows managed nodes, because some * older versions of Windows Server use the EC2Config service to process Systems Manager requests. */ public Boolean getIsLatestVersion() { return this.isLatestVersion; } /** ** Indicates whether the latest version of SSM Agent is running on your Linux managed node. This field doesn't * indicate whether or not the latest version is installed on Windows managed nodes, because some older versions of * Windows Server use the EC2Config service to process Systems Manager requests. *
* * @param isLatestVersion * Indicates whether the latest version of SSM Agent is running on your Linux managed node. This field * doesn't indicate whether or not the latest version is installed on Windows managed nodes, because some * older versions of Windows Server use the EC2Config service to process Systems Manager requests. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withIsLatestVersion(Boolean isLatestVersion) { setIsLatestVersion(isLatestVersion); return this; } /** ** Indicates whether the latest version of SSM Agent is running on your Linux managed node. This field doesn't * indicate whether or not the latest version is installed on Windows managed nodes, because some older versions of * Windows Server use the EC2Config service to process Systems Manager requests. *
* * @return Indicates whether the latest version of SSM Agent is running on your Linux managed node. This field * doesn't indicate whether or not the latest version is installed on Windows managed nodes, because some * older versions of Windows Server use the EC2Config service to process Systems Manager requests. */ public Boolean isLatestVersion() { return this.isLatestVersion; } /** ** The operating system platform type. *
* * @param platformType * The operating system platform type. * @see PlatformType */ public void setPlatformType(String platformType) { this.platformType = platformType; } /** ** The operating system platform type. *
* * @return The operating system platform type. * @see PlatformType */ public String getPlatformType() { return this.platformType; } /** ** The operating system platform type. *
* * @param platformType * The operating system platform type. * @return Returns a reference to this object so that method calls can be chained together. * @see PlatformType */ public InstanceInformation withPlatformType(String platformType) { setPlatformType(platformType); return this; } /** ** The operating system platform type. *
* * @param platformType * The operating system platform type. * @see PlatformType */ public void setPlatformType(PlatformType platformType) { withPlatformType(platformType); } /** ** The operating system platform type. *
* * @param platformType * The operating system platform type. * @return Returns a reference to this object so that method calls can be chained together. * @see PlatformType */ public InstanceInformation withPlatformType(PlatformType platformType) { this.platformType = platformType.toString(); return this; } /** ** The name of the operating system platform running on your managed node. *
* * @param platformName * The name of the operating system platform running on your managed node. */ public void setPlatformName(String platformName) { this.platformName = platformName; } /** ** The name of the operating system platform running on your managed node. *
* * @return The name of the operating system platform running on your managed node. */ public String getPlatformName() { return this.platformName; } /** ** The name of the operating system platform running on your managed node. *
* * @param platformName * The name of the operating system platform running on your managed node. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withPlatformName(String platformName) { setPlatformName(platformName); return this; } /** ** The version of the OS platform running on your managed node. *
* * @param platformVersion * The version of the OS platform running on your managed node. */ public void setPlatformVersion(String platformVersion) { this.platformVersion = platformVersion; } /** ** The version of the OS platform running on your managed node. *
* * @return The version of the OS platform running on your managed node. */ public String getPlatformVersion() { return this.platformVersion; } /** ** The version of the OS platform running on your managed node. *
* * @param platformVersion * The version of the OS platform running on your managed node. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withPlatformVersion(String platformVersion) { setPlatformVersion(platformVersion); return this; } /** ** The activation ID created by Amazon Web Services Systems Manager when the server or virtual machine (VM) was * registered. *
* * @param activationId * The activation ID created by Amazon Web Services Systems Manager when the server or virtual machine (VM) * was registered. */ public void setActivationId(String activationId) { this.activationId = activationId; } /** ** The activation ID created by Amazon Web Services Systems Manager when the server or virtual machine (VM) was * registered. *
* * @return The activation ID created by Amazon Web Services Systems Manager when the server or virtual machine (VM) * was registered. */ public String getActivationId() { return this.activationId; } /** ** The activation ID created by Amazon Web Services Systems Manager when the server or virtual machine (VM) was * registered. *
* * @param activationId * The activation ID created by Amazon Web Services Systems Manager when the server or virtual machine (VM) * was registered. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withActivationId(String activationId) { setActivationId(activationId); return this; } /** *
* The Identity and Access Management (IAM) role assigned to the on-premises Systems Manager managed node. This call
* doesn't return the IAM role for Amazon Elastic Compute Cloud (Amazon EC2) instances. To retrieve the IAM role for
* an EC2 instance, use the Amazon EC2 DescribeInstances
operation. For information, see DescribeInstances in
* the Amazon EC2 API Reference or describe-instances in the
* Amazon Web Services CLI Command Reference.
*
DescribeInstances
operation. For
* information, see DescribeInstances in the Amazon EC2 API Reference or describe-instances
* in the Amazon Web Services CLI Command Reference.
*/
public void setIamRole(String iamRole) {
this.iamRole = iamRole;
}
/**
*
* The Identity and Access Management (IAM) role assigned to the on-premises Systems Manager managed node. This call
* doesn't return the IAM role for Amazon Elastic Compute Cloud (Amazon EC2) instances. To retrieve the IAM role for
* an EC2 instance, use the Amazon EC2 DescribeInstances
operation. For information, see DescribeInstances in
* the Amazon EC2 API Reference or describe-instances in the
* Amazon Web Services CLI Command Reference.
*
DescribeInstances
operation.
* For information, see DescribeInstances in the Amazon EC2 API Reference or describe-instances in the Amazon Web Services CLI Command Reference.
*/
public String getIamRole() {
return this.iamRole;
}
/**
*
* The Identity and Access Management (IAM) role assigned to the on-premises Systems Manager managed node. This call
* doesn't return the IAM role for Amazon Elastic Compute Cloud (Amazon EC2) instances. To retrieve the IAM role for
* an EC2 instance, use the Amazon EC2 DescribeInstances
operation. For information, see DescribeInstances in
* the Amazon EC2 API Reference or describe-instances in the
* Amazon Web Services CLI Command Reference.
*
DescribeInstances
operation. For
* information, see DescribeInstances in the Amazon EC2 API Reference or describe-instances
* in the Amazon Web Services CLI Command Reference.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public InstanceInformation withIamRole(String iamRole) {
setIamRole(iamRole);
return this;
}
/**
* * The date the server or VM was registered with Amazon Web Services as a managed node. *
* * @param registrationDate * The date the server or VM was registered with Amazon Web Services as a managed node. */ public void setRegistrationDate(java.util.Date registrationDate) { this.registrationDate = registrationDate; } /** ** The date the server or VM was registered with Amazon Web Services as a managed node. *
* * @return The date the server or VM was registered with Amazon Web Services as a managed node. */ public java.util.Date getRegistrationDate() { return this.registrationDate; } /** ** The date the server or VM was registered with Amazon Web Services as a managed node. *
* * @param registrationDate * The date the server or VM was registered with Amazon Web Services as a managed node. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withRegistrationDate(java.util.Date registrationDate) { setRegistrationDate(registrationDate); return this; } /** ** The type of instance. Instances are either EC2 instances or managed instances. *
* * @param resourceType * The type of instance. Instances are either EC2 instances or managed instances. * @see ResourceType */ public void setResourceType(String resourceType) { this.resourceType = resourceType; } /** ** The type of instance. Instances are either EC2 instances or managed instances. *
* * @return The type of instance. Instances are either EC2 instances or managed instances. * @see ResourceType */ public String getResourceType() { return this.resourceType; } /** ** The type of instance. Instances are either EC2 instances or managed instances. *
* * @param resourceType * The type of instance. Instances are either EC2 instances or managed instances. * @return Returns a reference to this object so that method calls can be chained together. * @see ResourceType */ public InstanceInformation withResourceType(String resourceType) { setResourceType(resourceType); return this; } /** ** The type of instance. Instances are either EC2 instances or managed instances. *
* * @param resourceType * The type of instance. Instances are either EC2 instances or managed instances. * @see ResourceType */ public void setResourceType(ResourceType resourceType) { withResourceType(resourceType); } /** ** The type of instance. Instances are either EC2 instances or managed instances. *
* * @param resourceType * The type of instance. Instances are either EC2 instances or managed instances. * @return Returns a reference to this object so that method calls can be chained together. * @see ResourceType */ public InstanceInformation withResourceType(ResourceType resourceType) { this.resourceType = resourceType.toString(); return this; } /** *
* The name assigned to an on-premises server, edge device, or virtual machine (VM) when it is activated as a
* Systems Manager managed node. The name is specified as the DefaultInstanceName
property using the
* CreateActivation command. It is applied to the managed node by specifying the Activation Code and
* Activation ID when you install SSM Agent on the node, as explained in Install SSM
* Agent for a hybrid environment (Linux) and Install SSM
* Agent for a hybrid environment (Windows). To retrieve the Name
tag of an EC2 instance, use the
* Amazon EC2 DescribeInstances
operation. For information, see DescribeInstances in
* the Amazon EC2 API Reference or describe-instances in the
* Amazon Web Services CLI Command Reference.
*
DefaultInstanceName
property using
* the CreateActivation command. It is applied to the managed node by specifying the Activation Code
* and Activation ID when you install SSM Agent on the node, as explained in Install SSM Agent for a hybrid environment (Linux) and Install SSM Agent for a hybrid environment (Windows). To retrieve the Name
tag of an EC2
* instance, use the Amazon EC2 DescribeInstances
operation. For information, see DescribeInstances in the Amazon EC2 API Reference or describe-instances
* in the Amazon Web Services CLI Command Reference.
*/
public void setName(String name) {
this.name = name;
}
/**
*
* The name assigned to an on-premises server, edge device, or virtual machine (VM) when it is activated as a
* Systems Manager managed node. The name is specified as the DefaultInstanceName
property using the
* CreateActivation command. It is applied to the managed node by specifying the Activation Code and
* Activation ID when you install SSM Agent on the node, as explained in Install SSM
* Agent for a hybrid environment (Linux) and Install SSM
* Agent for a hybrid environment (Windows). To retrieve the Name
tag of an EC2 instance, use the
* Amazon EC2 DescribeInstances
operation. For information, see DescribeInstances in
* the Amazon EC2 API Reference or describe-instances in the
* Amazon Web Services CLI Command Reference.
*
DefaultInstanceName
property
* using the CreateActivation command. It is applied to the managed node by specifying the Activation
* Code and Activation ID when you install SSM Agent on the node, as explained in Install SSM Agent for a hybrid environment (Linux) and Install SSM Agent for a hybrid environment (Windows). To retrieve the Name
tag of an
* EC2 instance, use the Amazon EC2 DescribeInstances
operation. For information, see DescribeInstances in the Amazon EC2 API Reference or describe-instances in the Amazon Web Services CLI Command Reference.
*/
public String getName() {
return this.name;
}
/**
*
* The name assigned to an on-premises server, edge device, or virtual machine (VM) when it is activated as a
* Systems Manager managed node. The name is specified as the DefaultInstanceName
property using the
* CreateActivation command. It is applied to the managed node by specifying the Activation Code and
* Activation ID when you install SSM Agent on the node, as explained in Install SSM
* Agent for a hybrid environment (Linux) and Install SSM
* Agent for a hybrid environment (Windows). To retrieve the Name
tag of an EC2 instance, use the
* Amazon EC2 DescribeInstances
operation. For information, see DescribeInstances in
* the Amazon EC2 API Reference or describe-instances in the
* Amazon Web Services CLI Command Reference.
*
DefaultInstanceName
property using
* the CreateActivation command. It is applied to the managed node by specifying the Activation Code
* and Activation ID when you install SSM Agent on the node, as explained in Install SSM Agent for a hybrid environment (Linux) and Install SSM Agent for a hybrid environment (Windows). To retrieve the Name
tag of an EC2
* instance, use the Amazon EC2 DescribeInstances
operation. For information, see DescribeInstances in the Amazon EC2 API Reference or describe-instances
* in the Amazon Web Services CLI Command Reference.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public InstanceInformation withName(String name) {
setName(name);
return this;
}
/**
* * The IP address of the managed node. *
* * @param iPAddress * The IP address of the managed node. */ public void setIPAddress(String iPAddress) { this.iPAddress = iPAddress; } /** ** The IP address of the managed node. *
* * @return The IP address of the managed node. */ public String getIPAddress() { return this.iPAddress; } /** ** The IP address of the managed node. *
* * @param iPAddress * The IP address of the managed node. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withIPAddress(String iPAddress) { setIPAddress(iPAddress); return this; } /** ** The fully qualified host name of the managed node. *
* * @param computerName * The fully qualified host name of the managed node. */ public void setComputerName(String computerName) { this.computerName = computerName; } /** ** The fully qualified host name of the managed node. *
* * @return The fully qualified host name of the managed node. */ public String getComputerName() { return this.computerName; } /** ** The fully qualified host name of the managed node. *
* * @param computerName * The fully qualified host name of the managed node. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withComputerName(String computerName) { setComputerName(computerName); return this; } /** ** The status of the association. *
* * @param associationStatus * The status of the association. */ public void setAssociationStatus(String associationStatus) { this.associationStatus = associationStatus; } /** ** The status of the association. *
* * @return The status of the association. */ public String getAssociationStatus() { return this.associationStatus; } /** ** The status of the association. *
* * @param associationStatus * The status of the association. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withAssociationStatus(String associationStatus) { setAssociationStatus(associationStatus); return this; } /** ** The date the association was last run. *
* * @param lastAssociationExecutionDate * The date the association was last run. */ public void setLastAssociationExecutionDate(java.util.Date lastAssociationExecutionDate) { this.lastAssociationExecutionDate = lastAssociationExecutionDate; } /** ** The date the association was last run. *
* * @return The date the association was last run. */ public java.util.Date getLastAssociationExecutionDate() { return this.lastAssociationExecutionDate; } /** ** The date the association was last run. *
* * @param lastAssociationExecutionDate * The date the association was last run. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withLastAssociationExecutionDate(java.util.Date lastAssociationExecutionDate) { setLastAssociationExecutionDate(lastAssociationExecutionDate); return this; } /** ** The last date the association was successfully run. *
* * @param lastSuccessfulAssociationExecutionDate * The last date the association was successfully run. */ public void setLastSuccessfulAssociationExecutionDate(java.util.Date lastSuccessfulAssociationExecutionDate) { this.lastSuccessfulAssociationExecutionDate = lastSuccessfulAssociationExecutionDate; } /** ** The last date the association was successfully run. *
* * @return The last date the association was successfully run. */ public java.util.Date getLastSuccessfulAssociationExecutionDate() { return this.lastSuccessfulAssociationExecutionDate; } /** ** The last date the association was successfully run. *
* * @param lastSuccessfulAssociationExecutionDate * The last date the association was successfully run. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withLastSuccessfulAssociationExecutionDate(java.util.Date lastSuccessfulAssociationExecutionDate) { setLastSuccessfulAssociationExecutionDate(lastSuccessfulAssociationExecutionDate); return this; } /** ** Information about the association. *
* * @param associationOverview * Information about the association. */ public void setAssociationOverview(InstanceAggregatedAssociationOverview associationOverview) { this.associationOverview = associationOverview; } /** ** Information about the association. *
* * @return Information about the association. */ public InstanceAggregatedAssociationOverview getAssociationOverview() { return this.associationOverview; } /** ** Information about the association. *
* * @param associationOverview * Information about the association. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceInformation withAssociationOverview(InstanceAggregatedAssociationOverview associationOverview) { setAssociationOverview(associationOverview); return this; } /** *
* The ID of the source resource. For IoT Greengrass devices, SourceId
is the Thing name.
*
SourceId
is the Thing name.
*/
public void setSourceId(String sourceId) {
this.sourceId = sourceId;
}
/**
*
* The ID of the source resource. For IoT Greengrass devices, SourceId
is the Thing name.
*
SourceId
is the Thing name.
*/
public String getSourceId() {
return this.sourceId;
}
/**
*
* The ID of the source resource. For IoT Greengrass devices, SourceId
is the Thing name.
*
SourceId
is the Thing name.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public InstanceInformation withSourceId(String sourceId) {
setSourceId(sourceId);
return this;
}
/**
*
* The type of the source resource. For IoT Greengrass devices, SourceType
is
* AWS::IoT::Thing
.
*
SourceType
is
* AWS::IoT::Thing
.
* @see SourceType
*/
public void setSourceType(String sourceType) {
this.sourceType = sourceType;
}
/**
*
* The type of the source resource. For IoT Greengrass devices, SourceType
is
* AWS::IoT::Thing
.
*
SourceType
is
* AWS::IoT::Thing
.
* @see SourceType
*/
public String getSourceType() {
return this.sourceType;
}
/**
*
* The type of the source resource. For IoT Greengrass devices, SourceType
is
* AWS::IoT::Thing
.
*
SourceType
is
* AWS::IoT::Thing
.
* @return Returns a reference to this object so that method calls can be chained together.
* @see SourceType
*/
public InstanceInformation withSourceType(String sourceType) {
setSourceType(sourceType);
return this;
}
/**
*
* The type of the source resource. For IoT Greengrass devices, SourceType
is
* AWS::IoT::Thing
.
*
SourceType
is
* AWS::IoT::Thing
.
* @see SourceType
*/
public void setSourceType(SourceType sourceType) {
withSourceType(sourceType);
}
/**
*
* The type of the source resource. For IoT Greengrass devices, SourceType
is
* AWS::IoT::Thing
.
*
SourceType
is
* AWS::IoT::Thing
.
* @return Returns a reference to this object so that method calls can be chained together.
* @see SourceType
*/
public InstanceInformation withSourceType(SourceType sourceType) {
this.sourceType = sourceType.toString();
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 (getInstanceId() != null)
sb.append("InstanceId: ").append(getInstanceId()).append(",");
if (getPingStatus() != null)
sb.append("PingStatus: ").append(getPingStatus()).append(",");
if (getLastPingDateTime() != null)
sb.append("LastPingDateTime: ").append(getLastPingDateTime()).append(",");
if (getAgentVersion() != null)
sb.append("AgentVersion: ").append(getAgentVersion()).append(",");
if (getIsLatestVersion() != null)
sb.append("IsLatestVersion: ").append(getIsLatestVersion()).append(",");
if (getPlatformType() != null)
sb.append("PlatformType: ").append(getPlatformType()).append(",");
if (getPlatformName() != null)
sb.append("PlatformName: ").append(getPlatformName()).append(",");
if (getPlatformVersion() != null)
sb.append("PlatformVersion: ").append(getPlatformVersion()).append(",");
if (getActivationId() != null)
sb.append("ActivationId: ").append(getActivationId()).append(",");
if (getIamRole() != null)
sb.append("IamRole: ").append(getIamRole()).append(",");
if (getRegistrationDate() != null)
sb.append("RegistrationDate: ").append(getRegistrationDate()).append(",");
if (getResourceType() != null)
sb.append("ResourceType: ").append(getResourceType()).append(",");
if (getName() != null)
sb.append("Name: ").append(getName()).append(",");
if (getIPAddress() != null)
sb.append("IPAddress: ").append(getIPAddress()).append(",");
if (getComputerName() != null)
sb.append("ComputerName: ").append(getComputerName()).append(",");
if (getAssociationStatus() != null)
sb.append("AssociationStatus: ").append(getAssociationStatus()).append(",");
if (getLastAssociationExecutionDate() != null)
sb.append("LastAssociationExecutionDate: ").append(getLastAssociationExecutionDate()).append(",");
if (getLastSuccessfulAssociationExecutionDate() != null)
sb.append("LastSuccessfulAssociationExecutionDate: ").append(getLastSuccessfulAssociationExecutionDate()).append(",");
if (getAssociationOverview() != null)
sb.append("AssociationOverview: ").append(getAssociationOverview()).append(",");
if (getSourceId() != null)
sb.append("SourceId: ").append(getSourceId()).append(",");
if (getSourceType() != null)
sb.append("SourceType: ").append(getSourceType());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof InstanceInformation == false)
return false;
InstanceInformation other = (InstanceInformation) obj;
if (other.getInstanceId() == null ^ this.getInstanceId() == null)
return false;
if (other.getInstanceId() != null && other.getInstanceId().equals(this.getInstanceId()) == false)
return false;
if (other.getPingStatus() == null ^ this.getPingStatus() == null)
return false;
if (other.getPingStatus() != null && other.getPingStatus().equals(this.getPingStatus()) == false)
return false;
if (other.getLastPingDateTime() == null ^ this.getLastPingDateTime() == null)
return false;
if (other.getLastPingDateTime() != null && other.getLastPingDateTime().equals(this.getLastPingDateTime()) == false)
return false;
if (other.getAgentVersion() == null ^ this.getAgentVersion() == null)
return false;
if (other.getAgentVersion() != null && other.getAgentVersion().equals(this.getAgentVersion()) == false)
return false;
if (other.getIsLatestVersion() == null ^ this.getIsLatestVersion() == null)
return false;
if (other.getIsLatestVersion() != null && other.getIsLatestVersion().equals(this.getIsLatestVersion()) == false)
return false;
if (other.getPlatformType() == null ^ this.getPlatformType() == null)
return false;
if (other.getPlatformType() != null && other.getPlatformType().equals(this.getPlatformType()) == false)
return false;
if (other.getPlatformName() == null ^ this.getPlatformName() == null)
return false;
if (other.getPlatformName() != null && other.getPlatformName().equals(this.getPlatformName()) == false)
return false;
if (other.getPlatformVersion() == null ^ this.getPlatformVersion() == null)
return false;
if (other.getPlatformVersion() != null && other.getPlatformVersion().equals(this.getPlatformVersion()) == false)
return false;
if (other.getActivationId() == null ^ this.getActivationId() == null)
return false;
if (other.getActivationId() != null && other.getActivationId().equals(this.getActivationId()) == false)
return false;
if (other.getIamRole() == null ^ this.getIamRole() == null)
return false;
if (other.getIamRole() != null && other.getIamRole().equals(this.getIamRole()) == false)
return false;
if (other.getRegistrationDate() == null ^ this.getRegistrationDate() == null)
return false;
if (other.getRegistrationDate() != null && other.getRegistrationDate().equals(this.getRegistrationDate()) == false)
return false;
if (other.getResourceType() == null ^ this.getResourceType() == null)
return false;
if (other.getResourceType() != null && other.getResourceType().equals(this.getResourceType()) == 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.getIPAddress() == null ^ this.getIPAddress() == null)
return false;
if (other.getIPAddress() != null && other.getIPAddress().equals(this.getIPAddress()) == false)
return false;
if (other.getComputerName() == null ^ this.getComputerName() == null)
return false;
if (other.getComputerName() != null && other.getComputerName().equals(this.getComputerName()) == false)
return false;
if (other.getAssociationStatus() == null ^ this.getAssociationStatus() == null)
return false;
if (other.getAssociationStatus() != null && other.getAssociationStatus().equals(this.getAssociationStatus()) == false)
return false;
if (other.getLastAssociationExecutionDate() == null ^ this.getLastAssociationExecutionDate() == null)
return false;
if (other.getLastAssociationExecutionDate() != null && other.getLastAssociationExecutionDate().equals(this.getLastAssociationExecutionDate()) == false)
return false;
if (other.getLastSuccessfulAssociationExecutionDate() == null ^ this.getLastSuccessfulAssociationExecutionDate() == null)
return false;
if (other.getLastSuccessfulAssociationExecutionDate() != null
&& other.getLastSuccessfulAssociationExecutionDate().equals(this.getLastSuccessfulAssociationExecutionDate()) == false)
return false;
if (other.getAssociationOverview() == null ^ this.getAssociationOverview() == null)
return false;
if (other.getAssociationOverview() != null && other.getAssociationOverview().equals(this.getAssociationOverview()) == false)
return false;
if (other.getSourceId() == null ^ this.getSourceId() == null)
return false;
if (other.getSourceId() != null && other.getSourceId().equals(this.getSourceId()) == false)
return false;
if (other.getSourceType() == null ^ this.getSourceType() == null)
return false;
if (other.getSourceType() != null && other.getSourceType().equals(this.getSourceType()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getInstanceId() == null) ? 0 : getInstanceId().hashCode());
hashCode = prime * hashCode + ((getPingStatus() == null) ? 0 : getPingStatus().hashCode());
hashCode = prime * hashCode + ((getLastPingDateTime() == null) ? 0 : getLastPingDateTime().hashCode());
hashCode = prime * hashCode + ((getAgentVersion() == null) ? 0 : getAgentVersion().hashCode());
hashCode = prime * hashCode + ((getIsLatestVersion() == null) ? 0 : getIsLatestVersion().hashCode());
hashCode = prime * hashCode + ((getPlatformType() == null) ? 0 : getPlatformType().hashCode());
hashCode = prime * hashCode + ((getPlatformName() == null) ? 0 : getPlatformName().hashCode());
hashCode = prime * hashCode + ((getPlatformVersion() == null) ? 0 : getPlatformVersion().hashCode());
hashCode = prime * hashCode + ((getActivationId() == null) ? 0 : getActivationId().hashCode());
hashCode = prime * hashCode + ((getIamRole() == null) ? 0 : getIamRole().hashCode());
hashCode = prime * hashCode + ((getRegistrationDate() == null) ? 0 : getRegistrationDate().hashCode());
hashCode = prime * hashCode + ((getResourceType() == null) ? 0 : getResourceType().hashCode());
hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode());
hashCode = prime * hashCode + ((getIPAddress() == null) ? 0 : getIPAddress().hashCode());
hashCode = prime * hashCode + ((getComputerName() == null) ? 0 : getComputerName().hashCode());
hashCode = prime * hashCode + ((getAssociationStatus() == null) ? 0 : getAssociationStatus().hashCode());
hashCode = prime * hashCode + ((getLastAssociationExecutionDate() == null) ? 0 : getLastAssociationExecutionDate().hashCode());
hashCode = prime * hashCode + ((getLastSuccessfulAssociationExecutionDate() == null) ? 0 : getLastSuccessfulAssociationExecutionDate().hashCode());
hashCode = prime * hashCode + ((getAssociationOverview() == null) ? 0 : getAssociationOverview().hashCode());
hashCode = prime * hashCode + ((getSourceId() == null) ? 0 : getSourceId().hashCode());
hashCode = prime * hashCode + ((getSourceType() == null) ? 0 : getSourceType().hashCode());
return hashCode;
}
@Override
public InstanceInformation clone() {
try {
return (InstanceInformation) 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.simplesystemsmanagement.model.transform.InstanceInformationMarshaller.getInstance().marshall(this, protocolMarshaller);
}
}