@Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;

        if (obj instanceof ClusterOperationV2Provisioned == false)
            return false;
        ClusterOperationV2Provisioned other = (ClusterOperationV2Provisioned) obj;
        if (other.getOperationSteps() == null ^ this.getOperationSteps() == null)
            return false;
        if (other.getOperationSteps() != null && other.getOperationSteps().equals(this.getOperationSteps()) == false)
            return false;
        if (other.getSourceClusterInfo() == null ^ this.getSourceClusterInfo() == null)
            return false;
        if (other.getSourceClusterInfo() != null && other.getSourceClusterInfo().equals(this.getSourceClusterInfo()) == false)
            return false;
        if (other.getTargetClusterInfo() == null ^ this.getTargetClusterInfo() == null)
            return false;
        if (other.getTargetClusterInfo() != null && other.getTargetClusterInfo().equals(this.getTargetClusterInfo()) == false)
            return false;
        if (other.getVpcConnectionInfo() == null ^ this.getVpcConnectionInfo() == null)
            return false;
        if (other.getVpcConnectionInfo() != null && other.getVpcConnectionInfo().equals(this.getVpcConnectionInfo()) == false)
            return false;
        return true;
    }
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()
aws-java-sdk-kafka/src/main/java/com/amazonaws/services/kafka/model/ClusterOperationV2Provisioned.java