/* * Copyright 2010-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.iot.model; import java.io.Serializable; import com.amazonaws.AmazonWebServiceRequest; /** *
* Updates the status of the specified certificate. This operation is * idempotent. *
** Requires permission to access the UpdateCertificate action. *
** Certificates must be in the ACTIVE state to authenticate devices that use a * certificate to connect to IoT. *
** Within a few minutes of updating a certificate from the ACTIVE state to any * other state, IoT disconnects all devices that used that certificate to * connect. Devices cannot use a certificate that is not in the ACTIVE state to * reconnect. *
*/ public class UpdateCertificateRequest extends AmazonWebServiceRequest implements Serializable { /** ** The ID of the certificate. (The last part of the certificate ARN contains * the certificate ID.) *
*
* Constraints:
* Length: 64 - 64
* Pattern: (0x)?[a-fA-F0-9]+
*/
private String certificateId;
/**
*
* The new status. *
** Note: Setting the status to PENDING_TRANSFER or PENDING_ACTIVATION * will result in an exception being thrown. PENDING_TRANSFER and * PENDING_ACTIVATION are statuses used internally by IoT. They are not * intended for developer use. *
** Note: The status value REGISTER_INACTIVE is deprecated and should * not be used. *
*
* Constraints:
* Allowed Values: ACTIVE, INACTIVE, REVOKED, PENDING_TRANSFER,
* REGISTER_INACTIVE, PENDING_ACTIVATION
*/
private String newStatus;
/**
*
* The ID of the certificate. (The last part of the certificate ARN contains * the certificate ID.) *
*
* Constraints:
* Length: 64 - 64
* Pattern: (0x)?[a-fA-F0-9]+
*
* @return
* The ID of the certificate. (The last part of the certificate ARN * contains the certificate ID.) *
*/ public String getCertificateId() { return certificateId; } /** ** The ID of the certificate. (The last part of the certificate ARN contains * the certificate ID.) *
*
* Constraints:
* Length: 64 - 64
* Pattern: (0x)?[a-fA-F0-9]+
*
* @param certificateId
* The ID of the certificate. (The last part of the certificate * ARN contains the certificate ID.) *
*/ public void setCertificateId(String certificateId) { this.certificateId = certificateId; } /** ** The ID of the certificate. (The last part of the certificate ARN contains * the certificate ID.) *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: 64 - 64
* Pattern: (0x)?[a-fA-F0-9]+
*
* @param certificateId
* The ID of the certificate. (The last part of the certificate * ARN contains the certificate ID.) *
* @return A reference to this updated object so that method calls can be * chained together. */ public UpdateCertificateRequest withCertificateId(String certificateId) { this.certificateId = certificateId; return this; } /** ** The new status. *
** Note: Setting the status to PENDING_TRANSFER or PENDING_ACTIVATION * will result in an exception being thrown. PENDING_TRANSFER and * PENDING_ACTIVATION are statuses used internally by IoT. They are not * intended for developer use. *
** Note: The status value REGISTER_INACTIVE is deprecated and should * not be used. *
*
* Constraints:
* Allowed Values: ACTIVE, INACTIVE, REVOKED, PENDING_TRANSFER,
* REGISTER_INACTIVE, PENDING_ACTIVATION
*
* @return
* The new status. *
** Note: Setting the status to PENDING_TRANSFER or * PENDING_ACTIVATION will result in an exception being thrown. * PENDING_TRANSFER and PENDING_ACTIVATION are statuses used * internally by IoT. They are not intended for developer use. *
** Note: The status value REGISTER_INACTIVE is deprecated and * should not be used. *
* @see CertificateStatus */ public String getNewStatus() { return newStatus; } /** ** The new status. *
** Note: Setting the status to PENDING_TRANSFER or PENDING_ACTIVATION * will result in an exception being thrown. PENDING_TRANSFER and * PENDING_ACTIVATION are statuses used internally by IoT. They are not * intended for developer use. *
** Note: The status value REGISTER_INACTIVE is deprecated and should * not be used. *
*
* Constraints:
* Allowed Values: ACTIVE, INACTIVE, REVOKED, PENDING_TRANSFER,
* REGISTER_INACTIVE, PENDING_ACTIVATION
*
* @param newStatus
* The new status. *
** Note: Setting the status to PENDING_TRANSFER or * PENDING_ACTIVATION will result in an exception being thrown. * PENDING_TRANSFER and PENDING_ACTIVATION are statuses used * internally by IoT. They are not intended for developer use. *
** Note: The status value REGISTER_INACTIVE is deprecated * and should not be used. *
* @see CertificateStatus */ public void setNewStatus(String newStatus) { this.newStatus = newStatus; } /** ** The new status. *
** Note: Setting the status to PENDING_TRANSFER or PENDING_ACTIVATION * will result in an exception being thrown. PENDING_TRANSFER and * PENDING_ACTIVATION are statuses used internally by IoT. They are not * intended for developer use. *
** Note: The status value REGISTER_INACTIVE is deprecated and should * not be used. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: ACTIVE, INACTIVE, REVOKED, PENDING_TRANSFER,
* REGISTER_INACTIVE, PENDING_ACTIVATION
*
* @param newStatus
* The new status. *
** Note: Setting the status to PENDING_TRANSFER or * PENDING_ACTIVATION will result in an exception being thrown. * PENDING_TRANSFER and PENDING_ACTIVATION are statuses used * internally by IoT. They are not intended for developer use. *
** Note: The status value REGISTER_INACTIVE is deprecated * and should not be used. *
* @return A reference to this updated object so that method calls can be * chained together. * @see CertificateStatus */ public UpdateCertificateRequest withNewStatus(String newStatus) { this.newStatus = newStatus; return this; } /** ** The new status. *
** Note: Setting the status to PENDING_TRANSFER or PENDING_ACTIVATION * will result in an exception being thrown. PENDING_TRANSFER and * PENDING_ACTIVATION are statuses used internally by IoT. They are not * intended for developer use. *
** Note: The status value REGISTER_INACTIVE is deprecated and should * not be used. *
*
* Constraints:
* Allowed Values: ACTIVE, INACTIVE, REVOKED, PENDING_TRANSFER,
* REGISTER_INACTIVE, PENDING_ACTIVATION
*
* @param newStatus
* The new status. *
** Note: Setting the status to PENDING_TRANSFER or * PENDING_ACTIVATION will result in an exception being thrown. * PENDING_TRANSFER and PENDING_ACTIVATION are statuses used * internally by IoT. They are not intended for developer use. *
** Note: The status value REGISTER_INACTIVE is deprecated * and should not be used. *
* @see CertificateStatus */ public void setNewStatus(CertificateStatus newStatus) { this.newStatus = newStatus.toString(); } /** ** The new status. *
** Note: Setting the status to PENDING_TRANSFER or PENDING_ACTIVATION * will result in an exception being thrown. PENDING_TRANSFER and * PENDING_ACTIVATION are statuses used internally by IoT. They are not * intended for developer use. *
** Note: The status value REGISTER_INACTIVE is deprecated and should * not be used. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: ACTIVE, INACTIVE, REVOKED, PENDING_TRANSFER,
* REGISTER_INACTIVE, PENDING_ACTIVATION
*
* @param newStatus
* The new status. *
** Note: Setting the status to PENDING_TRANSFER or * PENDING_ACTIVATION will result in an exception being thrown. * PENDING_TRANSFER and PENDING_ACTIVATION are statuses used * internally by IoT. They are not intended for developer use. *
** Note: The status value REGISTER_INACTIVE is deprecated * and should not be used. *
* @return A reference to this updated object so that method calls can be * chained together. * @see CertificateStatus */ public UpdateCertificateRequest withNewStatus(CertificateStatus newStatus) { this.newStatus = newStatus.toString(); 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 (getCertificateId() != null) sb.append("certificateId: " + getCertificateId() + ","); if (getNewStatus() != null) sb.append("newStatus: " + getNewStatus()); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getCertificateId() == null) ? 0 : getCertificateId().hashCode()); hashCode = prime * hashCode + ((getNewStatus() == null) ? 0 : getNewStatus().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof UpdateCertificateRequest == false) return false; UpdateCertificateRequest other = (UpdateCertificateRequest) obj; if (other.getCertificateId() == null ^ this.getCertificateId() == null) return false; if (other.getCertificateId() != null && other.getCertificateId().equals(this.getCertificateId()) == false) return false; if (other.getNewStatus() == null ^ this.getNewStatus() == null) return false; if (other.getNewStatus() != null && other.getNewStatus().equals(this.getNewStatus()) == false) return false; return true; } }