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

com.amazonaws.services.snowdevicemanagement.model.EbsInstanceBlockDevice Maven / Gradle / Ivy

Go to download

The AWS Java SDK for AWS Snow Device Management module holds the client classes that are used for communicating with AWS Snow Device Management 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.snowdevicemanagement.model;

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

/**
 * 

* Describes a parameter used to set up an Amazon Elastic Block Store (Amazon EBS) volume in a block device mapping. *

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

* When the attachment was initiated. *

*/ private java.util.Date attachTime; /** *

* A value that indicates whether the volume is deleted on instance termination. *

*/ private Boolean deleteOnTermination; /** *

* The attachment state. *

*/ private String status; /** *

* The ID of the Amazon EBS volume. *

*/ private String volumeId; /** *

* When the attachment was initiated. *

* * @param attachTime * When the attachment was initiated. */ public void setAttachTime(java.util.Date attachTime) { this.attachTime = attachTime; } /** *

* When the attachment was initiated. *

* * @return When the attachment was initiated. */ public java.util.Date getAttachTime() { return this.attachTime; } /** *

* When the attachment was initiated. *

* * @param attachTime * When the attachment was initiated. * @return Returns a reference to this object so that method calls can be chained together. */ public EbsInstanceBlockDevice withAttachTime(java.util.Date attachTime) { setAttachTime(attachTime); return this; } /** *

* A value that indicates whether the volume is deleted on instance termination. *

* * @param deleteOnTermination * A value that indicates whether the volume is deleted on instance termination. */ public void setDeleteOnTermination(Boolean deleteOnTermination) { this.deleteOnTermination = deleteOnTermination; } /** *

* A value that indicates whether the volume is deleted on instance termination. *

* * @return A value that indicates whether the volume is deleted on instance termination. */ public Boolean getDeleteOnTermination() { return this.deleteOnTermination; } /** *

* A value that indicates whether the volume is deleted on instance termination. *

* * @param deleteOnTermination * A value that indicates whether the volume is deleted on instance termination. * @return Returns a reference to this object so that method calls can be chained together. */ public EbsInstanceBlockDevice withDeleteOnTermination(Boolean deleteOnTermination) { setDeleteOnTermination(deleteOnTermination); return this; } /** *

* A value that indicates whether the volume is deleted on instance termination. *

* * @return A value that indicates whether the volume is deleted on instance termination. */ public Boolean isDeleteOnTermination() { return this.deleteOnTermination; } /** *

* The attachment state. *

* * @param status * The attachment state. * @see AttachmentStatus */ public void setStatus(String status) { this.status = status; } /** *

* The attachment state. *

* * @return The attachment state. * @see AttachmentStatus */ public String getStatus() { return this.status; } /** *

* The attachment state. *

* * @param status * The attachment state. * @return Returns a reference to this object so that method calls can be chained together. * @see AttachmentStatus */ public EbsInstanceBlockDevice withStatus(String status) { setStatus(status); return this; } /** *

* The attachment state. *

* * @param status * The attachment state. * @return Returns a reference to this object so that method calls can be chained together. * @see AttachmentStatus */ public EbsInstanceBlockDevice withStatus(AttachmentStatus status) { this.status = status.toString(); return this; } /** *

* The ID of the Amazon EBS volume. *

* * @param volumeId * The ID of the Amazon EBS volume. */ public void setVolumeId(String volumeId) { this.volumeId = volumeId; } /** *

* The ID of the Amazon EBS volume. *

* * @return The ID of the Amazon EBS volume. */ public String getVolumeId() { return this.volumeId; } /** *

* The ID of the Amazon EBS volume. *

* * @param volumeId * The ID of the Amazon EBS volume. * @return Returns a reference to this object so that method calls can be chained together. */ public EbsInstanceBlockDevice withVolumeId(String volumeId) { setVolumeId(volumeId); 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 (getAttachTime() != null) sb.append("AttachTime: ").append(getAttachTime()).append(","); if (getDeleteOnTermination() != null) sb.append("DeleteOnTermination: ").append(getDeleteOnTermination()).append(","); if (getStatus() != null) sb.append("Status: ").append(getStatus()).append(","); if (getVolumeId() != null) sb.append("VolumeId: ").append(getVolumeId()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof EbsInstanceBlockDevice == false) return false; EbsInstanceBlockDevice other = (EbsInstanceBlockDevice) obj; if (other.getAttachTime() == null ^ this.getAttachTime() == null) return false; if (other.getAttachTime() != null && other.getAttachTime().equals(this.getAttachTime()) == false) return false; if (other.getDeleteOnTermination() == null ^ this.getDeleteOnTermination() == null) return false; if (other.getDeleteOnTermination() != null && other.getDeleteOnTermination().equals(this.getDeleteOnTermination()) == false) return false; if (other.getStatus() == null ^ this.getStatus() == null) return false; if (other.getStatus() != null && other.getStatus().equals(this.getStatus()) == false) return false; if (other.getVolumeId() == null ^ this.getVolumeId() == null) return false; if (other.getVolumeId() != null && other.getVolumeId().equals(this.getVolumeId()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getAttachTime() == null) ? 0 : getAttachTime().hashCode()); hashCode = prime * hashCode + ((getDeleteOnTermination() == null) ? 0 : getDeleteOnTermination().hashCode()); hashCode = prime * hashCode + ((getStatus() == null) ? 0 : getStatus().hashCode()); hashCode = prime * hashCode + ((getVolumeId() == null) ? 0 : getVolumeId().hashCode()); return hashCode; } @Override public EbsInstanceBlockDevice clone() { try { return (EbsInstanceBlockDevice) 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.snowdevicemanagement.model.transform.EbsInstanceBlockDeviceMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy