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

        if (obj instanceof AppSummary == false)
            return false;
        AppSummary other = (AppSummary) obj;
        if (other.getAppId() == null ^ this.getAppId() == null)
            return false;
        if (other.getAppId() != null && other.getAppId().equals(this.getAppId()) == false)
            return false;
        if (other.getImportedAppId() == null ^ this.getImportedAppId() == null)
            return false;
        if (other.getImportedAppId() != null && other.getImportedAppId().equals(this.getImportedAppId()) == 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.getDescription() == null ^ this.getDescription() == null)
            return false;
        if (other.getDescription() != null && other.getDescription().equals(this.getDescription()) == 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.getStatusMessage() == null ^ this.getStatusMessage() == null)
            return false;
        if (other.getStatusMessage() != null && other.getStatusMessage().equals(this.getStatusMessage()) == false)
            return false;
        if (other.getReplicationConfigurationStatus() == null ^ this.getReplicationConfigurationStatus() == null)
            return false;
        if (other.getReplicationConfigurationStatus() != null
                && other.getReplicationConfigurationStatus().equals(this.getReplicationConfigurationStatus()) == false)
            return false;
        if (other.getReplicationStatus() == null ^ this.getReplicationStatus() == null)
            return false;
        if (other.getReplicationStatus() != null && other.getReplicationStatus().equals(this.getReplicationStatus()) == false)
            return false;
        if (other.getReplicationStatusMessage() == null ^ this.getReplicationStatusMessage() == null)
            return false;
        if (other.getReplicationStatusMessage() != null && other.getReplicationStatusMessage().equals(this.getReplicationStatusMessage()) == false)
            return false;
        if (other.getLatestReplicationTime() == null ^ this.getLatestReplicationTime() == null)
            return false;
        if (other.getLatestReplicationTime() != null && other.getLatestReplicationTime().equals(this.getLatestReplicationTime()) == false)
            return false;
        if (other.getLaunchConfigurationStatus() == null ^ this.getLaunchConfigurationStatus() == null)
            return false;
        if (other.getLaunchConfigurationStatus() != null && other.getLaunchConfigurationStatus().equals(this.getLaunchConfigurationStatus()) == false)
            return false;
        if (other.getLaunchStatus() == null ^ this.getLaunchStatus() == null)
            return false;
        if (other.getLaunchStatus() != null && other.getLaunchStatus().equals(this.getLaunchStatus()) == false)
            return false;
        if (other.getLaunchStatusMessage() == null ^ this.getLaunchStatusMessage() == null)
            return false;
        if (other.getLaunchStatusMessage() != null && other.getLaunchStatusMessage().equals(this.getLaunchStatusMessage()) == false)
            return false;
        if (other.getLaunchDetails() == null ^ this.getLaunchDetails() == null)
            return false;
        if (other.getLaunchDetails() != null && other.getLaunchDetails().equals(this.getLaunchDetails()) == false)
            return false;
        if (other.getCreationTime() == null ^ this.getCreationTime() == null)
            return false;
        if (other.getCreationTime() != null && other.getCreationTime().equals(this.getCreationTime()) == false)
            return false;
        if (other.getLastModified() == null ^ this.getLastModified() == null)
            return false;
        if (other.getLastModified() != null && other.getLastModified().equals(this.getLastModified()) == false)
            return false;
        if (other.getRoleName() == null ^ this.getRoleName() == null)
            return false;
        if (other.getRoleName() != null && other.getRoleName().equals(this.getRoleName()) == false)
            return false;
        if (other.getTotalServerGroups() == null ^ this.getTotalServerGroups() == null)
            return false;
        if (other.getTotalServerGroups() != null && other.getTotalServerGroups().equals(this.getTotalServerGroups()) == false)
            return false;
        if (other.getTotalServers() == null ^ this.getTotalServers() == null)
            return false;
        if (other.getTotalServers() != null && other.getTotalServers().equals(this.getTotalServers()) == 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-servermigration/src/main/java/com/amazonaws/services/servermigration/model/AppSummary.java