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

        if (obj instanceof GetInsightRuleReportResult == false)
            return false;
        GetInsightRuleReportResult other = (GetInsightRuleReportResult) obj;
        if (other.getKeyLabels() == null ^ this.getKeyLabels() == null)
            return false;
        if (other.getKeyLabels() != null && other.getKeyLabels().equals(this.getKeyLabels()) == false)
            return false;
        if (other.getAggregationStatistic() == null ^ this.getAggregationStatistic() == null)
            return false;
        if (other.getAggregationStatistic() != null && other.getAggregationStatistic().equals(this.getAggregationStatistic()) == false)
            return false;
        if (other.getAggregateValue() == null ^ this.getAggregateValue() == null)
            return false;
        if (other.getAggregateValue() != null && other.getAggregateValue().equals(this.getAggregateValue()) == false)
            return false;
        if (other.getApproximateUniqueCount() == null ^ this.getApproximateUniqueCount() == null)
            return false;
        if (other.getApproximateUniqueCount() != null && other.getApproximateUniqueCount().equals(this.getApproximateUniqueCount()) == false)
            return false;
        if (other.getContributors() == null ^ this.getContributors() == null)
            return false;
        if (other.getContributors() != null && other.getContributors().equals(this.getContributors()) == false)
            return false;
        if (other.getMetricDatapoints() == null ^ this.getMetricDatapoints() == null)
            return false;
        if (other.getMetricDatapoints() != null && other.getMetricDatapoints().equals(this.getMetricDatapoints()) == 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-cloudwatch/src/main/java/com/amazonaws/services/cloudwatch/model/GetInsightRuleReportResult.java